1. Marlo Simon Noval
  2. vimrc

Commits

Marlo Simon Noval  committed 445b9f8 Merge

Merge new CSS snippets

  • Participants
  • Parent commits 5bfff76, d57093b
  • Branches default

Comments (0)

Files changed (999)

File snippets/_.snippets

-# Global snippets
-
-# (c) holds no legal value ;)
-snippet c)
-	Copyright `&enc[:2] == "utf" ? "©" : "(c)"` `strftime("%Y")` ${1:`g:snips_author`}. All Rights Reserved.${2}
-snippet date
-	`strftime("%Y-%m-%d")`
-snippet ddate
-	`strftime("%B %d, %Y")`

File snippets/_/date/date + time.snippet

View file
+`strftime("%Y-%m-%d %H:%M:%S")`

File snippets/_/date/date.snippet

View file
+`strftime("%Y-%m-%d")`

File snippets/_/fold.snippet

View file
+# {{{ ${1:description}
+${2}
+# }}}

File snippets/_/lorem.snippet

View file
+Lorem ipsum dolor sit amet, consectetur magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation
+ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate
+velit esse cillum dolore eu fugiat nulla pariatur.  Excepteur sint occaecat cupidatat non proident, sunt in
+culpa qui officia deserunt mollit anim id est laborum${1}

File snippets/_/modeline.snippet

View file
+`Snippet_Modeline()`

File snippets/autoit.snippets

-snippet if
-	If ${1:condition} Then
-		${2:; True code}
-	EndIf
-snippet el
-	Else
-		${1}
-snippet elif
-	ElseIf ${1:condition} Then
-		${2:; True code}
-# If/Else block
-snippet ifel
-	If ${1:condition} Then
-		${2:; True code}
-	Else
-		${3:; Else code}
-	EndIf
-# If/ElseIf/Else block
-snippet ifelif
-	If ${1:condition 1} Then
-		${2:; True code}
-	ElseIf ${3:condition 2} Then
-		${4:; True code}
-	Else
-		${5:; Else code}
-	EndIf
-# Switch block
-snippet switch
-	Switch (${1:condition})
-	Case {$2:case1}:
-		{$3:; Case 1 code}
-	Case Else:
-		{$4:; Else code}
-	EndSwitch
-# Select block
-snippet select
-	Select (${1:condition})
-	Case {$2:case1}:
-		{$3:; Case 1 code}
-	Case Else:
-		{$4:; Else code}
-	EndSelect
-# While loop
-snippet while
-	While (${1:condition})
-		${2:; code...}
-	WEnd
-# For loop
-snippet for
-	For ${1:n} = ${3:1} to ${2:count}
-		${4:; code...}
-	Next
-# New Function
-snippet func
-	Func ${1:fname}(${2:`indent('.') ? 'self' : ''`}):
-		${4:Return}
-	EndFunc
-# Message box
-snippet msg
-	MsgBox(${3:MsgType}, ${1:"Title"}, ${2:"Message Text"})
-# Debug Message
-snippet debug
-	MsgBox(0, "Debug", ${1:"Debug Message"})
-# Show Variable Debug Message
-snippet showvar
-	MsgBox(0, "${1:VarName}", $1)

File snippets/c.snippets

-# main()
-snippet main
-	int main(int argc, const char *argv[])
-	{
-		${1}
-		return 0;
-	}
-snippet mainn
-	int main(void)
-	{
-		${1}
-		return 0;
-	}
-# #include <...>
-snippet inc
-	#include <${1:stdio}.h>${2}
-# #include "..."
-snippet Inc
-	#include "${1:`Filename("$1.h")`}"${2}
-# #ifndef ... #define ... #endif
-snippet Def
-	#ifndef $1
-	#define ${1:SYMBOL} ${2:value}
-	#endif${3}
-snippet def
-	#define
-snippet ifdef
-	#ifdef ${1:FOO}
-		${2:#define }
-	#endif
-snippet #if
-	#if ${1:FOO}
-		${2}
-	#endif
-# Header Include-Guard
-snippet once
-	#ifndef ${1:`toupper(Filename('$1_H', 'UNTITLED_H'))`}
-
-	#define $1
-
-	${2}
-
-	#endif /* end of include guard: $1 */
-# If Condition
-snippet if
-	if (${1:/* condition */}) {
-		${2:/* code */}
-	}
-snippet el
-	else {
-		${1}
-	}
-# Ternary conditional
-snippet t
-	${1:/* condition */} ? ${2:a} : ${3:b}
-# Do While Loop
-snippet do
-	do {
-		${2:/* code */}
-	} while (${1:/* condition */});
-# While Loop
-snippet wh
-	while (${1:/* condition */}) {
-		${2:/* code */}
-	}
-# For Loop
-snippet for
-	for (${2:i} = 0; $2 < ${1:count}; $2${3:++}) {
-		${4:/* code */}
-	}
-# Custom For Loop
-snippet forr
-	for (${1:i} = ${2:0}; ${3:$1 < 10}; $1${4:++}) {
-		${5:/* code */}
-	}
-# Function
-snippet fun
-	${1:void} ${2:function_name}(${3})
-	{
-		${4:/* code */}
-	}
-# Function Declaration
-snippet fund
-	${1:void} ${2:function_name}(${3});${4}
-# Typedef
-snippet td
-	typedef ${1:int} ${2:MyCustomType};${3}
-# Struct
-snippet st
-	struct ${1:`Filename('$1_t', 'name')`} {
-		${2:/* data */}
-	}${3: /* optional variable list */};${4}
-# Typedef struct
-snippet tds
-	typedef struct ${2:_$1 }{
-		${3:/* data */}
-	} ${1:`Filename('$1_t', 'name')`};
-# Typdef enum
-snippet tde
-	typedef enum {
-		${1:/* data */}
-	} ${2:foo};
-# printf
-# unfortunately version this isn't as nice as TextMates's, given the lack of a
-# dynamic `...`
-snippet pr
-	printf("${1:%s}\n"${2});${3}
-# fprintf (again, this isn't as nice as TextMate's version, but it works)
-snippet fpr
-	fprintf(${1:stderr}, "${2:%s}\n"${3});${4}
-# This is kind of convenient
-snippet .
-	[${1}]${2}

File snippets/c/cl.snippet

View file
+class ${1:`Filename('$1_t', 'name')`} {
+	public:
+		$1 (${2:arguments});
+		virtual ~$1 ();
+	private:
+		${3:/* data */}
+};

File snippets/c/def.snippet

View file
+#ifndef $1
+#define ${1:SYMBOL} ${2:value}
+#endif${3}

File snippets/c/do.snippet

View file
+do {
+	${2:/* code */}
+} while (${1:/* condition */});

File snippets/c/el.snippet

View file
+else {
+	${1}
+}

File snippets/c/for.snippet

View file
+for (${2:i} = 0; $2 < ${1:count}; $2${3:++}) {
+	${4:/* code */}
+}

File snippets/c/forr.snippet

View file
+for (${1:i} = 0; ${2:$1 < 5}; $1${3:++}) {
+	${4:/* code */}
+}

File snippets/c/fpf.snippet

View file
+fprintf(${1:stderr}, "${2:%s}\n"${3});${4}

File snippets/c/fun.snippet

View file
+${1:void} ${2:function_name} (${3})
+{
+	${4:/* code */}
+}

File snippets/c/if.snippet

View file
+if (${1:/* condition */}) {
+	${2:/* code */}
+}

File snippets/c/inc/inc.snippet

View file
+#include "${1:`Filename("$1.h")`}"${2}

File snippets/c/inc/inc_global.snippet

View file
+#include <${1:stdio}.h>${2}

File snippets/c/main.snippet

View file
+int main (int argc, char const* argv[])
+{
+	${1:/* code */}
+	return 0;
+}

File snippets/c/map.snippet

View file
+std::map<${1:key}, ${2:value}> map${3};

File snippets/c/ns.snippet

View file
+namespace ${1:`Filename('', 'my')`} {
+	${2}
+} /* $1 */

File snippets/c/once.snippet

View file
+#ifndef ${1:`toupper(Filename('', 'UNTITLED').'_'.system("/usr/bin/ruby -e 'print (rand * 2821109907455).round.to_s(36)'"))`}
+#define $1
+
+${2}
+
+#endif /* end of include guard: $1 */

File snippets/c/pr.snippet

View file
+printf("${1:%s}\n"${2});${3}

File snippets/c/readfile.snippet

View file
+std::vector<char> v;
+if (FILE *${2:fp} = fopen(${1:"filename"}, "r")) {
+	char buf[1024];
+	while (size_t len = fread(buf, 1, sizeof(buf), $2))
+		v.insert(v.end(), buf, buf + len);
+	fclose($2);
+}${3}

File snippets/c/st.snippet

View file
+struct ${1:`Filename('$1_t', 'name')`} {
+	${2:/* data */}
+}${3: /* optional variable list */};${4}

File snippets/c/t.snippet

View file
+${1:/* condition */} ? ${2:a} : ${3:b}'

File snippets/c/td.snippet

View file
+typedef ${1:int} ${2:MyCustomType};

File snippets/c/tds.snippet

View file
+typedef struct {
+	${2:/* data */}
+} ${1:`Filename('$1_t', 'name')`};

File snippets/c/vector.snippet

View file
+std::vector<${1:char}> v${2};

File snippets/c/wh.snippet

View file
+while (${1:/* condition */}) {
+	${2:/* code */}
+}

File snippets/cpp.snippets

-# Read File Into Vector
-snippet readfile
-	std::vector<char> v;
-	if (FILE *${2:fp} = fopen(${1:"filename"}, "r")) {
-		char buf[1024];
-		while (size_t len = fread(buf, 1, sizeof(buf), $2))
-			v.insert(v.end(), buf, buf + len);
-		fclose($2);
-	}${3}
-# std::map
-snippet map
-	std::map<${1:key}, ${2:value}> map${3};
-# std::vector
-snippet vector
-	std::vector<${1:char}> v${2};
-# Namespace
-snippet ns
-	namespace ${1:`Filename('', 'my')`} {
-		${2}
-	} /* $1 */
-# Class
-snippet cl
-	class ${1:`Filename('$1_t', 'name')`} {
-	public:
-		$1 (${2:arguments});
-		virtual ~$1 ();
-
-	private:
-		${3:/* data */}
-	};
-snippet fori
-	for (int ${2:i} = 0; $2 < ${1:count}; $2${3:++}) {
-		${4:/* code */}
-	}

File snippets/css.snippets

File contents unchanged.

File snippets/css/!!.snippets

View file
+#
+# CSS Textmate Bundle (default) from RedCar Editor
+#
+# Background
+snippet background background image repeat attachment position
+	background: #${1:DDD} url(${2}) ${3:repeat/repeat-x/repeat-y/no-repeat} ${4:scroll/fixed} ${5:top left/top center/top right/center left/center center/center right/bottom left/bottom center/bottom right/x-% y-%/x-pos y-pos};${6}
+snippet background background-color: name
+	background-color: ${1:red};${2}
+snippet background background-color: transparent
+	background-color: transparent;
+snippet background background-color: hex
+	background-color: #${1:DDD};${2}
+snippet background background-color: rgb
+	background-color: rgb(${1:255},${2:255},${3:255});${4}
+snippet background background-image: none
+	background-image: none;
+snippet background background-image: url
+	background-image: url(${1});${2}
+snippet background background-repeat: r/r-x/r-y/n-r
+	background-repeat: ${1:repeat/repeat-x/repeat-y/no-repeat};${2}
+snippet background background-attachment: scroll/fixed
+	background-attachment: ${1:scroll/fixed};${2}
+snippet background background-position: position
+	background-position: ${1:top left/top center/top right/center left/center center/center right/bottom left/bottom center/bottom right/x-% y-%/x-pos y-pos};${2}
+snippet background filter: AlphaImageLoader[for IE PNGs]
+	background-image: none;
+	filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='${1:/images/transparent.png}', sizingMethod='${2:image/scale/crop}');${3}
+#
+# Border
+snippet border border: size style color
+	border: ${1:1}px ${2:solid} #${3:999};${4}
+snippet border border-width: size
+	border-width: ${1:1}px;${2}
+snippet border border-style: style
+	border-style: ${1:none/hidden/dotted/dashed/solid/double/groove/ridge/inset/outset};${2}
+snippet border border-color: color
+	border-color: #${1:999};${2}
+snippet border border-top: size style color
+	border-top: ${1:1}px ${2:solid} #${3:999};${4}
+snippet border border-top-width: size
+	border-top-width: ${1:1}px;${2}
+snippet border border-top-style: style
+	border-top-style: ${1:none/hidden/dotted/dashed/solid/double/groove/ridge/inset/outset};${2}
+snippet border border-top-color: color
+	border-top-color: #${1:999};${2}
+snippet border border-right: size style color
+	border-right: ${1:1}px ${2:solid} #${3:999};${4}
+snippet border border-right-width: size
+	border-right-width: ${1:1}px;${2}
+snippet border border-right-style: style
+	border-right-style: ${1:none/hidden/dotted/dashed/solid/double/groove/ridge/inset/outset};${2}
+snippet border border-right-color: color
+	border-right-color: #${1:999};${2}
+snippet border border-bottom: size style color
+	border-bottom: ${1:1}px ${2:solid} #${3:999};${4}
+snippet border border-bottom-width: size
+	border-bottom-width: ${1:1}px;${2}
+snippet border border-bottom-style: style
+	border-bottom-style: ${1:none/hidden/dotted/dashed/solid/double/groove/ridge/inset/outset};${2}
+snippet border border-bottom-color: color
+	border-bottom-color: #${1:999};${2}
+snippet border border-left: size style color
+	border-left: ${1:1}px ${2:solid} #${3:999};${4}
+snippet border border-left-width: size 
+	border-left-width: ${1:1}px;${2}
+snippet border border-left-style: style
+	border-left-style: ${1:none/hidden/dotted/dashed/solid/double/groove/ridge/inset/outset};${2}
+snippet border border-left-color: color
+	border-left-color: #${1:999};${2}
+#
+# Cursor
+snippet cursor cursor: type 
+	cursor: ${1:default/auto/crosshair/pointer/move/*-resize/text/wait/help};${2}
+snippet cursor cursor: url 
+	cursor: url(${1});${2}
+#
+# Color
+snippet color color: hex
+	color: #${1:DDD};${2}
+snippet color color: rgb
+	color: rgb(${1:255},${2:255},${3:255});${4}
+snippet color color: name
+	color: ${1:red};${2}
+#
+# Display
+snippet display display: table-types
+	display: ${1:table/inline-table/table-row-group/table-header-group/table-footer-group/table-row/table-column-group/table-column/table-cell/table-caption};${2}
+snippet display display: block
+	display: block;
+snippet display display: inline
+	display: inline;
+snippet display display: inline-block
+	display: inline-block;
+snippet display display: common-types
+	display: ${1:none/inline/block/inline-block/list-item/run-in/compact/marker};${2}
+#
+# Font
+snippet font font: style variant weight size/line-height font-family
+	font: ${1:normal/italic/oblique} ${2:normal/small-caps} ${3:normal/bold} ${4:1em/1.5em} ${5:Arial}, ${6:sans-}serif;${7}
+snippet font font: size font
+	font: ${1:75%} ${2:"Lucida Grande", "Trebuchet MS", Verdana,} ${3:sans-}serif;${4}
+snippet font font-style: normal/italic/oblique
+	font-style: ${1:normal/italic/oblique};${2}
+snippet font font-variant: normal/small-caps
+	font-variant: ${1:normal/small-caps};${2}
+snippet font font-weight: weight
+	font-weight: ${1:normal/bold};${2}
+snippet font font-size: size
+	font-size: ${1:100%};${2}
+snippet font line-height: size
+	line-height: ${1:1.5em};${2}
+snippet font font-family: family
+	font-family: ${1:Arial, "MS Trebuchet"}, ${2:sans-}serif;${3}
+#
+# List
+snippet list list-style-position: pos
+	list-style-position: ${1:inside/outside};${2}
+snippet list list-style: type position image
+	list-style: ${1:none/disc/circle/square/decimal/zero} ${2:inside/outside} url(${3});${4}
+snippet list list-style-image: url
+	list-style-image: url(${1});${2}
+snippet list list-style-type: roman-alpha-greek
+	list-style-type: ${1:lower-roman/upper-roman/lower-alpha/upper-alpha/lower-greek/lower-latin/upper-latin};${2}
+snippet list list-style-type: marker
+	list-style-type: ${1:none/disc/circle/square};
+snippet list list-style-type: other
+	list-style-type: ${1:hebrew/armenian/georgian};
+snippet list list-style-type: asian
+	list-style-type: ${1:cjk-ideographic/hiragana/katakana/hiragana-iroha/katakana-iroha};
+snippet list list-style-type: numeric
+	list-style-type: ${1:decimal/decimal-leading-zero/zero};
+#
+# Margin
+snippet margin margin: all
+	margin: ${1:20px};${2}
+snippet margin margin: T R B L
+	margin: ${1:20px} ${2:0px} ${3:40px} ${4:0px};${5}
+snippet margin margin: V H
+	margin: ${1:20px} ${2:0px};${3}
+snippet margin margin-top: length 
+	margin-top: ${1:20px};${2}
+snippet margin margin-right: length
+	margin-right: ${1:20px};${2}
+snippet margin margin-bottom: length
+	margin-bottom: ${1:20px};${2}
+snippet margin margin-left: length
+	margin-left: ${1:20px};${2}
+#
+# Padding
+snippet padding padding: all
+	padding: ${1:20px};${2}
+snippet padding padding: T R B L
+	padding: ${1:20px} ${2:0px} ${3:40px} ${4:0px};${5}
+snippet padding padding: V H
+	padding: ${1:20px} ${2:0px};${3}
+snippet padding padding-top: length 
+	padding-top: ${1:20px};${2}
+snippet padding padding-right: length
+	padding-right: ${1:20px};${2}
+snippet padding padding-bottom: length
+	padding-bottom: ${1:20px};${2}
+snippet padding padding-left: length
+	padding-left: ${1:20px};${2}
+#
+# Text
+snippet text text-align: left/center/right
+	text-align: ${1:left/right/center/justify};${2}
+snippet text text-transform: capitalize/upper/lower
+	text-transform: ${1:capitalize/uppercase/lowercase};${2}
+snippet text text-transform: none
+	text-transform: none;
+snippet text text-decoration: none/underline/overline/line-through/blink
+	text-decoration: ${1:none/underline/overline/line-through/blink};${2}
+snippet text text-indent: length
+	text-indent: ${1:10}px;${2}
+snippet text text-shadow: color-hex x y blur
+	text-shadow: #${1:DDD} ${2:10px} ${3:10px} ${4:2px};${5}
+snippet text text-shadow: color-rgb x y blur
+	text-shadow: rgb(${1:255},${2:255},${3:255}) ${4:10px} ${5:10px} ${6:2px};${7}
+snippet text text-shadow: none
+	text-shadow: none;
+#
+# Others
+snippet @
+	@import "${1}.css";${2}
+snippet !
+	!important
+snippet clear
+	clear: ${1:left/right/both/none};${2}
+snippet direction
+	direction: ${1:ltr|rtl};${2}
+snippet float
+	float: ${1:left/right/none};${2}
+snippet letter letter-spacing: em
+	letter-spacing: ${1}em;${2}
+snippet letter letter-spacing: px
+	letter-spacing: ${1}px;${2}
+snippet marker marker-offset: auto
+	marker-offset: auto;
+snippet marker marker-offset: length 
+	marker-offset: ${1:10px};${2}
+snippet overflow
+	overflow: ${1:visible/hidden/scroll/auto};${2}
+snippet opacity
+	opacity: ${1:0.5};
+	-moz-opacity: $1;
+	filter:alpha(opacity=${2:50});${3}
+snippet position
+	position:	${1:static/relative/absolute/fixed};${2}
+snippet selection
+	${1}::-moz-selection,
+	$1::selection {
+		color: ${2:inherit};
+		background: ${3:inherit};
+	}${4}
+snippet vertical
+	vertical-align: ${1:baseline/sub/super/top/text-top/middle/bottom/text-bottom/length/%};${2}
+snippet visibility
+	visibility: ${1:visible/hidden/collapse};${2}
+snippet white
+	white-space: ${1:normal/pre/nowrap};${2}
+snippet word word-spacing: length
+	word-spacing: ${1:10px};${2}
+snippet word word-spacing: normal 
+	word-spacing: normal;
+snippet z
+	z-index: ${1};${2}
+#
+# Improvements by Marlo Simon Noval <ragingmon@gmail.com>
+#
+# CSS blocks
+snippet =reset
+	/* -------------------------------------------------------------- 
+	-----------------------------------------------------------------
+			Reset
+	-----------------------------------------------------------------
+	-------------------------------------------------------------- */
+	*, html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, label, fieldset, input, p, blockquote, th, td {margin:0; padding:0}
+	table {border-collapse:collapse; border-spacing:0}
+	fieldset, img { border:0 }
+	address, caption, cite, code, dfn, em, strong, th, var {font-style:normal; font-weight:normal}
+	ol, ul, li {list-style:none}
+	caption, th {text-align:left}
+	h1, h2, h3, h4, h5, h6 {font-size:100%; font-weight:normal}
+	q:before, q:after {content:''}
+	a {text-decoration:none}
+
+	/* -------------------------------------------------------------- 
+			 Global reset-RESET (restores some sensible defaults)
+	-------------------------------------------------------------- */
+	strong {font-weight:bold}
+	em {font-style:italic}
+	a img {border:none} /* Gets rid of IE's blue borders */
+	a {outline: none} /* Removes Firefox imposed outline */
+snippet =clear
+	${1:.clear} {display: inline-block}
+	$1:after {content: "."; display: block; height: 0; clear: both; visibility: hidden}
+	* html $1{height: 1%}
+	$1{display: block}
+	$1-both {clear:both}${2}
+snippet =menu
+	${1:.menu} {} 
+	$1 li {display: inline} 
+	$1 li a, $1 li a:visited {display: block; float: left; margin-right: ${2}px}
+	$1 li.last a, $1 li.last a:visited {margin-right: 0}${3}
+snippet =header
+	h1, h2, h3, h4, h5, h6 {${1}}
+	h1 {font-size: 34px}
+	h2 {font-size: 22px}
+	h3 {font-size: 20px}
+	h4 {font-size: 18px}
+	h5 {font-size: 16px}
+	h6 {font-size: 14px}
+	h2,h4,h6 {color: #${2:DDD}}${3}
+# Header Default values
+snippet =info
+	/*
+	Theme Name: ${1}
+	Theme URI: http://${2:yourwebsite.com}
+	Description: ${3}
+	Version: ${4}
+	Author: ${5}
+	Author URI: http://${6:$2}
+	Tags: ${7}
+
+		The CSS, XHTML and design is released under GPL:
+		http://www.opensource.org/licenses/gpl-license.php
+
+	*/
+#
+# Image Replacement Techniques
+# http://www.mezzoblue.com/tests/revised-image-replacement/
+# http://css-tricks.com/css-image-replacement/
+#
+# Author       : C.Z. Robertson
+# Description  : Named after Todd Fahrner and popularized by Douglas Bowman and Jeffrey Zeldman.
+# Issues       : Most screen readers will not pick up the text when it is not rendered on-screen, nothing shows up under "images off, css on" scenarios, semantically meaningless <span>s necessary.
+# HTML         : <h1 id="image"><span>Image Replacement Technique</span></h1>
+# Trigger Desc : f for Fahrner
+snippet =irf
+	${1:#image} {width: ${2:0}px; height: ${3:0}px; background-image: url(${4})}
+	$1 span {display: none}
+# 
+# Author       : Mike Rundle
+# Description  : Referred as the Phark Method
+# Issues       : Nothing shows up under "images off, css on" scenarios, doesn't work in IE5.
+# HTML         : <h1 id="image">Image Replacement Technique</h1>
+# Trigger Desc : p for Phark
+snippet =irp
+	${1:#image} {width: ${2:0}px; height: ${3:0}px; background: url(${4}); text-indent: -9999px}
+#
+# Author       : Seamus Leahy and Stuart Langridge
+# Issues       : Nothing shows up under "images off, css on" scenarios, box model hack required to work in IE5.
+# HTML         : <h1 id="image">Image Replacement Technique</h1>
+# Trigger Desc : s for Seamus or Stuart
+snippet =irs
+	${1:#image} {height: 0 !important; overflow: hidden; padding-top: ${2:0}px; width: ${3:0}px; background: url(${4}) no-repeat}
+#
+# Author       : Leon Dwyer
+# Issues       : Doesn't solve images off/css on, still requires extra span.
+# HTML         : <h1 id="image"><span>Image Replacement Technique/<span></h1>
+# Trigger Desc : d for Dwyer
+snippet =ird
+	${1:#image} {background-image: url(${2}); width: ${3:0}px; height: ${4:0}px}
+	$1 span {display: block; width: 0; height: 0; overflow: hidden}
+#
+# Author       : Levin Alexander
+# Issues       : Extra empty span, transparent images don't hide text.
+# HTML         : <h1 id="image"><span></span>Image Replacement Technique</h1>
+# Trigger Desc : a for Alexander
+snippet =ira
+	${1:#image} {width: ${2:0}px; height: ${3:0}px; position: relative}
+	$1 span {background: url(${4}); position: absolute; height: 100%; width: 100%}
+#
+# Author       : Russ Weakley
+# Description  : Referred as the Lindsay Method
+# Issues       : Doesn't solve images off/CSS on, doesn't work on anything but flat-colour backgrounds.
+# HTML         : <h1 id="image">Image Replacement Technique</h1>
+# Trigger Desc : l for Lindsay
+snippet =irl