<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Wisdom and Wonder &#187; elisp</title>
	<atom:link href="http://www.wisdomandwonder.com/tag/elisp/feed" rel="self" type="application/rss+xml" />
	<link>http://www.wisdomandwonder.com</link>
	<description>Science and Philosophy</description>
	<lastBuildDate>Wed, 25 Jan 2012 05:09:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>An asynchronous web server written in Emacs LISP</title>
		<link>http://www.wisdomandwonder.com/link/5857/an-asynchronous-web-server-written-in-emacs-lisp</link>
		<comments>http://www.wisdomandwonder.com/link/5857/an-asynchronous-web-server-written-in-emacs-lisp#comments</comments>
		<pubDate>Mon, 18 Jul 2011 01:45:52 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[elisp]]></category>
		<category><![CDATA[Emacs]]></category>
		<category><![CDATA[Ide]]></category>
		<category><![CDATA[Programming Language]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=5857</guid>
		<description><![CDATA[Elnode is an asynchronous web server written in Emacs LISP. Emacs has had asynchronous socket programming facilities for some time and a few years ago asynchronous TCP server sockets were introduced. I couldn&#8217;t quite believe that no one had written an asynchronous webserver with EmacsLISP before. So now I have. When I started looking at [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p><a href="https://github.com/nicferrier/elnode">Elnode</a> is an asynchronous web server written in Emacs LISP.</p>
<p>Emacs has had asynchronous socket programming facilities for some time and a few years ago asynchronous TCP server sockets were introduced. I couldn&#8217;t quite believe that no one had written an asynchronous webserver with EmacsLISP before. So now I have.</p>
<p>When I started looking at actually doing this I intended to knock up just a silly demo. But the more I got into it the more it seemed to me that this could be an important addition to Emacs and that, sometimes, an Emacs LISP async web server could actually be useful.</p></blockquote>
<p>(via <a href="http://nic.ferrier.me.uk/blog/2010_10/elnode">nic</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/5857/an-asynchronous-web-server-written-in-emacs-lisp/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emacs Lisp merges Lexical binding to the Trunk</title>
		<link>http://www.wisdomandwonder.com/link/5642/emacs-lisp-merges-lexical-binding-to-the-trunk</link>
		<comments>http://www.wisdomandwonder.com/link/5642/emacs-lisp-merges-lexical-binding-to-the-trunk#comments</comments>
		<pubDate>Fri, 01 Apr 2011 23:10:10 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[elisp]]></category>
		<category><![CDATA[Lisp]]></category>
		<category><![CDATA[Programming Language]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=5642</guid>
		<description><![CDATA[(via emacs-devel)]]></description>
			<content:encoded><![CDATA[<p>(via <a href="http://lists.gnu.org/archive/html/emacs-devel/2011-04/msg00043.html">emacs-devel</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/5642/emacs-lisp-merges-lexical-binding-to-the-trunk/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Toggle between Vertical and Horizontal Windows Splitting</title>
		<link>http://www.wisdomandwonder.com/link/1188/toggle-between-vertical-and-horizontal-windows-splitting</link>
		<comments>http://www.wisdomandwonder.com/link/1188/toggle-between-vertical-and-horizontal-windows-splitting#comments</comments>
		<pubDate>Sat, 15 Nov 2008 04:17:09 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[elisp]]></category>
		<category><![CDATA[Emacs]]></category>
		<category><![CDATA[Ide]]></category>
		<category><![CDATA[Programming Language]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/?p=1188</guid>
		<description><![CDATA[On gnu.emacs.help: Requested: Function that toggles between vertical and horizontal split layout of currently defined windows preferrably preserving splitting ratio. &#40;defun my-toggle-window-split &#40;&#41; &#34;Vertical split shows more of each line, horizontal split shows more lines. This code toggles between them. It only works for frames with exactly two windows.&#34; &#40;interactive&#41; &#40;if &#40;= &#40;count-windows&#41; 2&#41; &#40;let* [...]]]></description>
			<content:encoded><![CDATA[<p>On <a href="http://groups.google.com/group/gnu.emacs.help/browse_thread/thread/e76147ed69fd1ee9#">gnu.emacs.help</a>:</p>
<blockquote><p>
Requested: Function that toggles between vertical and horizontal split layout of currently defined windows preferrably preserving splitting ratio.
</p></blockquote>

<div class="wp_syntax"><div class="code"><pre class="lisp" style="font-family:monospace;"><span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">defun</span> my-toggle-window-split <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; font-weight: bold; ">&#41;</span>
  <span style="color: #000000; ">&quot;Vertical split shows more of each line, horizontal split shows
more lines. This code toggles between them. It only works for
frames with exactly two windows.&quot;</span>
  <span style="color: #000000; font-weight: bold; ">&#40;</span>interactive<span style="color: #000000; font-weight: bold; ">&#41;</span>
  <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">if</span> <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; font-weight: bold; ">=</span> <span style="color: #000000; font-weight: bold; ">&#40;</span>count-windows<span style="color: #000000; font-weight: bold; ">&#41;</span> <span style="color: #000000; ">2</span><span style="color: #000000; font-weight: bold; ">&#41;</span>
      <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">let</span>* <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; font-weight: bold; ">&#40;</span>this-win-buffer <span style="color: #000000; font-weight: bold; ">&#40;</span>window-buffer<span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span>
             <span style="color: #000000; font-weight: bold; ">&#40;</span>next-win-buffer <span style="color: #000000; font-weight: bold; ">&#40;</span>window-buffer <span style="color: #000000; font-weight: bold; ">&#40;</span>next-window<span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span>
             <span style="color: #000000; font-weight: bold; ">&#40;</span>this-win-edges <span style="color: #000000; font-weight: bold; ">&#40;</span>window-edges <span style="color: #000000; font-weight: bold; ">&#40;</span>selected-window<span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span>
             <span style="color: #000000; font-weight: bold; ">&#40;</span>next-win-edges <span style="color: #000000; font-weight: bold; ">&#40;</span>window-edges <span style="color: #000000; font-weight: bold; ">&#40;</span>next-window<span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span>
             <span style="color: #000000; font-weight: bold; ">&#40;</span>this-win-2nd <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">not</span> <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">and</span> <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; font-weight: bold; ">&lt;=</span> <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">car</span> this-win-edges<span style="color: #000000; font-weight: bold; ">&#41;</span>
                                         <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">car</span> next-win-edges<span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span>
                                     <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; font-weight: bold; ">&lt;=</span> <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">cadr</span> this-win-edges<span style="color: #000000; font-weight: bold; ">&#41;</span>
                                         <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">cadr</span> next-win-edges<span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span>
             <span style="color: #000000; font-weight: bold; ">&#40;</span>splitter
              <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">if</span> <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; font-weight: bold; ">=</span> <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">car</span> this-win-edges<span style="color: #000000; font-weight: bold; ">&#41;</span>
                     <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">car</span> <span style="color: #000000; font-weight: bold; ">&#40;</span>window-edges <span style="color: #000000; font-weight: bold; ">&#40;</span>next-window<span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span>
                  'split-window-horizontally
                'split-window-vertically<span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span>
        <span style="color: #000000; font-weight: bold; ">&#40;</span>delete-other-windows<span style="color: #000000; font-weight: bold; ">&#41;</span>
        <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">let</span> <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; font-weight: bold; ">&#40;</span>first-win <span style="color: #000000; font-weight: bold; ">&#40;</span>selected-window<span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span>
          <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">funcall</span> splitter<span style="color: #000000; font-weight: bold; ">&#41;</span>
          <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">if</span> this-win-2nd <span style="color: #000000; font-weight: bold; ">&#40;</span>other-window <span style="color: #000000; ">1</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span>
          <span style="color: #000000; font-weight: bold; ">&#40;</span>set-window-buffer <span style="color: #000000; font-weight: bold; ">&#40;</span>selected-window<span style="color: #000000; font-weight: bold; ">&#41;</span> this-win-buffer<span style="color: #000000; font-weight: bold; ">&#41;</span>
          <span style="color: #000000; font-weight: bold; ">&#40;</span>set-window-buffer <span style="color: #000000; font-weight: bold; ">&#40;</span>next-window<span style="color: #000000; font-weight: bold; ">&#41;</span> next-win-buffer<span style="color: #000000; font-weight: bold; ">&#41;</span>
          <span style="color: #000000; font-weight: bold; ">&#40;</span>select-window first-win<span style="color: #000000; font-weight: bold; ">&#41;</span>
          <span style="color: #000000; font-weight: bold; ">&#40;</span><span style="color: #000000; ">if</span> this-win-2nd <span style="color: #000000; font-weight: bold; ">&#40;</span>other-window <span style="color: #000000; ">1</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span><span style="color: #000000; font-weight: bold; ">&#41;</span></pre></div></div>

<p>Thanks <a href="http://www.mygooglest.com/fni/index.html">Fabrice</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/1188/toggle-between-vertical-and-horizontal-windows-splitting/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Color Theme: pink-bliss.el</title>
		<link>http://www.wisdomandwonder.com/link/162/color-theme-pink-blissel</link>
		<comments>http://www.wisdomandwonder.com/link/162/color-theme-pink-blissel#comments</comments>
		<pubDate>Sat, 03 May 2008 22:14:31 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[elisp]]></category>
		<category><![CDATA[Emacs]]></category>
		<category><![CDATA[Ide]]></category>
		<category><![CDATA[Programming Language]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/link/162/color-theme-pink-blissel</guid>
		<description><![CDATA[Although pink-bliss.el color theme for Emacs is sure to elicit repressed memories of &#8220;Hello Kitty&#8221;, the normal confusion about why it exists doesn&#8217;t come along with it as you are simply all too lost in the ocean of pink (and pink-compatible) colors.]]></description>
			<content:encoded><![CDATA[<p>Although <a href="http://www.emacswiki.org/cgi-bin/emacs/pink-bliss.el">pink-bliss.el</a> color theme for Emacs is sure to elicit repressed memories of &#8220;Hello Kitty&#8221;, the normal confusion about why it exists doesn&#8217;t come along with it as you are simply all too lost in the ocean of pink (and pink-compatible) colors.</p>
<p><a href='http://www.wisdomandwonder.com/wordpress/wp-content/uploads/2008/05/pink-bliss.png' title='pink-bliss.png'><img src='http://www.wisdomandwonder.com/wordpress/wp-content/uploads/2008/05/pink-bliss.thumbnail.png' alt='pink-bliss.png' /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/162/color-theme-pink-blissel/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Color Theme for Emacs</title>
		<link>http://www.wisdomandwonder.com/link/161/color-theme-for-emacs</link>
		<comments>http://www.wisdomandwonder.com/link/161/color-theme-for-emacs#comments</comments>
		<pubDate>Sat, 03 May 2008 22:09:27 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[elisp]]></category>
		<category><![CDATA[Emacs]]></category>
		<category><![CDATA[Ide]]></category>
		<category><![CDATA[Programming Language]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/link/161/color-theme-for-emacs</guid>
		<description><![CDATA[Color Theme is an Emacs-Lisp package that lets you create and use different color themes within Emacs. This is probably critical for anyone new to Emacs.]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.emacswiki.org/cgi-bin/wiki?ColorTheme">Color Theme</a> is an Emacs-Lisp package that lets you create and use different color themes within Emacs.</p>
<p>This is probably critical for anyone new to Emacs.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/161/color-theme-for-emacs/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Inform Users with BoxQuote</title>
		<link>http://www.wisdomandwonder.com/link/113/inform-users-with-boxquote</link>
		<comments>http://www.wisdomandwonder.com/link/113/inform-users-with-boxquote#comments</comments>
		<pubDate>Mon, 21 Apr 2008 01:44:29 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[elisp]]></category>
		<category><![CDATA[Emacs]]></category>
		<category><![CDATA[Ide]]></category>
		<category><![CDATA[Programming Language]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/link/113/inform-users-with-boxquote</guid>
		<description><![CDATA[Have a look at how to utilize the &#8220;box control&#8221; within Emacs to help users with the task at hand.]]></description>
			<content:encoded><![CDATA[<p>Have a look at how to <a href="http://rlazo.supersized.org/archives/70-BEH-How-to-display-info-help-inside-a-box.html">utilize the &#8220;box control&#8221;</a> within Emacs to help users with the task at hand.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/113/inform-users-with-boxquote/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>emacs analog clock</title>
		<link>http://www.wisdomandwonder.com/link/111/emacs-analog-clock</link>
		<comments>http://www.wisdomandwonder.com/link/111/emacs-analog-clock#comments</comments>
		<pubDate>Mon, 21 Apr 2008 00:29:29 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[elisp]]></category>
		<category><![CDATA[Programming Language]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/link/111/emacs-analog-clock</guid>
		<description><![CDATA[For when a digital clock won&#8217;t do: analog-clock.el.]]></description>
			<content:encoded><![CDATA[<p>For when a digital clock won&#8217;t do: <a href="http://yrk.livejournal.com/212721.html">analog-clock.el</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/111/emacs-analog-clock/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RLX</title>
		<link>http://www.wisdomandwonder.com/link/109/rlx</link>
		<comments>http://www.wisdomandwonder.com/link/109/rlx#comments</comments>
		<pubDate>Mon, 21 Apr 2008 00:16:32 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[elisp]]></category>
		<category><![CDATA[Programming Language]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/link/109/rlx</guid>
		<description><![CDATA[RLX is a rogue-like video game engine written in Emacs Lisp that is being ported to Common Lisp. In addition to the fact that this is a game so it is just plain fun, the author uses emacs as an IDE for creating games using the engine. What more could you ask for? Read more [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://dto.mamalala.org/notebook/rlx.html">RLX</a> is a rogue-like video game engine written in Emacs Lisp that is being ported to Common Lisp.</p>
<p>In addition to the fact that this is a game so it is just plain fun, the author uses emacs as an IDE for creating games using the engine. </p>
<p>What more could you ask for? Read more on about it on his <a href="http://dto.mamalala.org/blog/">blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/109/rlx/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Catch elisp bugs with the compiler</title>
		<link>http://www.wisdomandwonder.com/link/96/catch-elisp-bugs-with-the-compiler</link>
		<comments>http://www.wisdomandwonder.com/link/96/catch-elisp-bugs-with-the-compiler#comments</comments>
		<pubDate>Fri, 18 Apr 2008 00:07:19 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[elisp]]></category>
		<category><![CDATA[Programming Language]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/link/96/catch-elisp-bugs-with-the-compiler</guid>
		<description><![CDATA[Juan Garcia has a post on reducing elisp bugs using the byte-code compiler.]]></description>
			<content:encoded><![CDATA[<p>Juan Garcia has a post on <a href="http://juangarcia.890m.com/blog/2008/04/17/reducing-elisp-bugs-using-the-byte-code-compiler/">reducing elisp bugs using the byte-code compiler</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/96/catch-elisp-bugs-with-the-compiler/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emacs Lisp as a scripting language</title>
		<link>http://www.wisdomandwonder.com/link/94/emacs-lisp-as-a-scripting-language</link>
		<comments>http://www.wisdomandwonder.com/link/94/emacs-lisp-as-a-scripting-language#comments</comments>
		<pubDate>Thu, 10 Apr 2008 02:54:39 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Link]]></category>
		<category><![CDATA[elisp]]></category>
		<category><![CDATA[Programming Language]]></category>

		<guid isPermaLink="false">http://www.wisdomandwonder.com/link/94/emacs-lisp-as-a-scripting-language</guid>
		<description><![CDATA[Here is a great article about using Elisp as a scripting language.]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.leancrew.com/all-this/2008/04/emacs-lisp-as-a-scripting-language/">Here</a> is a great article about using Elisp as a scripting language.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.wisdomandwonder.com/link/94/emacs-lisp-as-a-scripting-language/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

