<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US" > <head> <title>[Emacs] autopair problems when using term-mode | ltsBlog</title> <link href="/1/lts.css" rel="stylesheet" type="text/css" media="screen,projection" /> <link href="http://lukeshu.ath.cx/1/wordpress/wp-content/themes/lts/style.css" rel="stylesheet" type="text/css" media="all" /> <link href="http://lukeshu.ath.cx/1/wordpress/wp-content/themes/lts/widgets.css" rel="stylesheet" type="text/css" media="screen,projection" /> <link rel="pingback" href="http://lukeshu.ath.cx/1/wordpress/xmlrpc.php" /> <link rel="alternate" type="application/rss+xml" title="ltsBlog » Feed" href="http://lukeshu.ath.cx/1/wordpress/feed/" /> <link rel="alternate" type="application/rss+xml" title="ltsBlog » Comments Feed" href="http://lukeshu.ath.cx/1/wordpress/comments/feed/" /> <link rel="alternate" type="application/rss+xml" title="ltsBlog » [Emacs] autopair problems when using term-mode Comments Feed" href="http://lukeshu.ath.cx/1/wordpress/2011/08/emacs-autopair-problems-when-using-term-mode/feed/" /> <script type='text/javascript' src='http://lukeshu.ath.cx/1/wordpress/wp-includes/js/l10n.js?ver=20101110'></script> <script type='text/javascript' src='http://lukeshu.ath.cx/1/wordpress/wp-includes/js/comment-reply.js?ver=20090102'></script> <link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://lukeshu.ath.cx/1/wordpress/xmlrpc.php?rsd" /> <link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://lukeshu.ath.cx/1/wordpress/wp-includes/wlwmanifest.xml" /> <link rel='index' title='ltsBlog' href='http://lukeshu.ath.cx/1/wordpress/' /> <link rel='start' title='Lesson 1: Bourne Shell Scripting' href='http://lukeshu.ath.cx/1/wordpress/2010/09/hello-world/' /> <link rel='prev' title='Why `sed -i’ exists' href='http://lukeshu.ath.cx/1/wordpress/2011/05/why-sed-i-exists/' /> <link rel='next' title='Fixing “Wrong type argument: characterp, return” in !Emacs' href='http://lukeshu.ath.cx/1/wordpress/2011/08/fixing-wrong-type-argument-characterp-return-in-emacs/' /> <meta name="generator" content="WordPress 3.2.1" /> <link rel='canonical' href='http://lukeshu.ath.cx/1/wordpress/2011/08/emacs-autopair-problems-when-using-term-mode/' /> <link rel='shortlink' href='http://lukeshu.ath.cx/1/wordpress/?p=82' /> </head> <body> <div class="nocss"> <ul> <li><a href="#navigation">Skip to Navigation</a></li> <li><a href="#content">Skip to Content</a></li> <li><a href="#footer">Skip to Disclaimer</a></li> </ul> </div> <h1><a href="http://lukeshu.ath.cx/1/wordpress/" title="ltsBlog" rel="home">ltsBlog</a></h1> <div class="nav"><a class="nocss" id="navigation"></a> <ul> <li><a href="/1/">Home</a></li> <li><a href="/1/FRC/">Robots</a></li> <li><a href="/1/img/">Pictures</a></li> <li><a href="/1/wordpress/">Weblog</a></li> <li><a href="/1/comicjk/viewer.php">Comic JK</a></li> </ul> </div> <div class="sidebar widget-area"> <ul class="xoxo"> <li id="search-2" class="widget-container widget_search"> <form method="get" id="searchform" action="/1/wordpress/" > <div> <label class="screen-reader-text" for="s">Search ltsBlog:</label> <input type="text" value="" name="s" id="s" /> <input type="submit" id="searchsubmit" value="Search" /> </div> </form> </li> <li id="statusnetwidget-4" class="widget-container widget_statusnetwidget"> <span class="widget-title">Me on identi.ca</span> <ul class="statusnet"><li class="statusnet-item">"The darkest places in hell are reserved for those who maintain their neutrality in times of moral crisis." - Dante Alighieri <span class="statusnet-timestamp"><abbr title="2011/12/13 02:12:01"><a href="http://identi.ca/notice/86765280">2011/12/13</a></abbr></span></li><li class="statusnet-item">Someone egged a bunch of cars in our neighborhood. <span class="statusnet-timestamp"><abbr title="2011/12/03 05:58:48"><a href="http://identi.ca/notice/86136803">2011/12/03</a></abbr></span></li><li class="statusnet-item"><a href="http://identi.ca/group/git">!git</a>. is. such. win. <span class="statusnet-timestamp"><abbr title="2011/11/27 20:32:11"><a href="http://identi.ca/notice/85848970">2011/11/27</a></abbr></span></li><li class="statusnet-item">My favorite sites could get shut down by 1st censorship system for the internet. Must stop it: 11/16 <a href="http://ur1.ca/5qyod">http://ur1.ca/5qyod</a> <span class="statusnet-timestamp"><abbr title="2011/11/16 12:46:11"><a href="http://identi.ca/notice/85359960">2011/11/16</a></abbr></span></li></ul> </li> <li id="recent-posts-2" class="widget-container widget_recent_entries"> <span class="widget-title">Recent Posts</span> <ul> <li><a href="http://lukeshu.ath.cx/1/wordpress/2011/08/fixing-wrong-type-argument-characterp-return-in-emacs/" title="Fixing “Wrong type argument: characterp, return” in !Emacs">Fixing “Wrong type argument: characterp, return” in !Emacs</a></li> <li><a href="http://lukeshu.ath.cx/1/wordpress/2011/08/emacs-autopair-problems-when-using-term-mode/" title="[Emacs] autopair problems when using term-mode">[Emacs] autopair problems when using term-mode</a></li> <li><a href="http://lukeshu.ath.cx/1/wordpress/2011/05/why-sed-i-exists/" title="Why `sed -i’ exists">Why `sed -i’ exists</a></li> <li><a href="http://lukeshu.ath.cx/1/wordpress/2011/02/questions-about-copyright-of-the-deceased/" title="Questions about copyright of the deceased">Questions about copyright of the deceased</a></li> <li><a href="http://lukeshu.ath.cx/1/wordpress/2011/01/pointers-in-java/" title="Pointers in Java">Pointers in Java</a></li> </ul> </li><li id="recent-comments-2" class="widget-container widget_recent_comments"><span class="widget-title">Recent Comments</span><ul id="recentcomments"><li class="recentcomments"><a href='http://lukeshu.ath.cx/1/wordpress/2011/08/fixing-wrong-type-argument-characterp-return-in-emacs/' rel='external nofollow' class='url'>Fixing “Wrong type argument: characterp, return” in !Emacs | ltsBlog</a> on <a href="http://lukeshu.ath.cx/1/wordpress/2011/08/emacs-autopair-problems-when-using-term-mode/#comment-94">[Emacs] autopair problems when using term-mode</a></li><li class="recentcomments"><a href='http://lukeshu.ath.cx' rel='external nofollow' class='url'>lts</a> on <a href="http://lukeshu.ath.cx/1/wordpress/2010/09/hello-world/#comment-58">Lesson 1: Bourne Shell Scripting</a></li><li class="recentcomments"><a href='http://lukeshu.ath.cx' rel='external nofollow' class='url'>lts</a> on <a href="http://lukeshu.ath.cx/1/wordpress/2011/01/pointers-in-java/#comment-56">Pointers in Java</a></li><li class="recentcomments">Ari Consul on <a href="http://lukeshu.ath.cx/1/wordpress/2011/01/pointers-in-java/#comment-54">Pointers in Java</a></li><li class="recentcomments">Jade Parsons on <a href="http://lukeshu.ath.cx/1/wordpress/2010/09/hello-world/#comment-52">Lesson 1: Bourne Shell Scripting</a></li></ul></li><li id="archives-2" class="widget-container widget_archive"><span class="widget-title">Archives</span> <ul> <li><a href='http://lukeshu.ath.cx/1/wordpress/2011/08/' title='August 2011'>August 2011</a></li> <li><a href='http://lukeshu.ath.cx/1/wordpress/2011/05/' title='May 2011'>May 2011</a></li> <li><a href='http://lukeshu.ath.cx/1/wordpress/2011/02/' title='February 2011'>February 2011</a></li> <li><a href='http://lukeshu.ath.cx/1/wordpress/2011/01/' title='January 2011'>January 2011</a></li> <li><a href='http://lukeshu.ath.cx/1/wordpress/2010/11/' title='November 2010'>November 2010</a></li> <li><a href='http://lukeshu.ath.cx/1/wordpress/2010/10/' title='October 2010'>October 2010</a></li> <li><a href='http://lukeshu.ath.cx/1/wordpress/2010/09/' title='September 2010'>September 2010</a></li> </ul> </li><li id="categories-2" class="widget-container widget_categories"><span class="widget-title">Categories</span> <ul> <li class="cat-item cat-item-8"><a href="http://lukeshu.ath.cx/1/wordpress/category/computers/" title="View all posts filed under Computers">Computers</a> </li> <li class="cat-item cat-item-7"><a href="http://lukeshu.ath.cx/1/wordpress/category/school-2/essays/" title="View all posts filed under Essays">Essays</a> </li> <li class="cat-item cat-item-12"><a href="http://lukeshu.ath.cx/1/wordpress/category/morning-pages/" title="View all posts filed under morning-pages">morning-pages</a> </li> <li class="cat-item cat-item-9"><a href="http://lukeshu.ath.cx/1/wordpress/category/computers/programming-lessons/" title="View all posts filed under Programming Lessons">Programming Lessons</a> </li> <li class="cat-item cat-item-6"><a href="http://lukeshu.ath.cx/1/wordpress/category/school-2/" title="View all posts filed under School">School</a> </li> <li class="cat-item cat-item-1"><a href="http://lukeshu.ath.cx/1/wordpress/category/uncategorized/" title="View all posts filed under Uncategorized">Uncategorized</a> </li> </ul> </li><li id="meta-2" class="widget-container widget_meta"><span class="widget-title">Meta</span> <ul> <li><a href="http://lukeshu.ath.cx/1/wordpress/wp-login.php?action=register">Register</a></li> <li><a href="http://lukeshu.ath.cx/1/wordpress/wp-login.php">Log in</a></li> <li><a href="http://lukeshu.ath.cx/1/wordpress/feed/" title="Syndicate this site using RSS 2.0">Entries <abbr title="Really Simple Syndication">RSS</abbr></a></li> <li><a href="http://lukeshu.ath.cx/1/wordpress/comments/feed/" title="The latest comments to all posts in RSS">Comments <abbr title="Really Simple Syndication">RSS</abbr></a></li> <li><a href="http://wordpress.org/" title="Powered by WordPress, state-of-the-art semantic personal publishing platform.">WordPress.org</a></li> </ul> </li><li id="ltshomewidget-3" class="widget-container widget_ltshomewidget"> <ul class="lts_sidebar"> <li><a href="http://www.defectivebydesign.org/intel"><img src="http://static.fsf.org/nosvn/dbd/stop-intel-med.png" alt="stop Intel" /></a></li> <li> <!-- Beginning of Project Wonderful ad code: --> <!-- Ad box ID: 51613 --> <script type="text/javascript"> <!-- var pw_d=document; pw_d.projectwonderful_adbox_id = "51613"; pw_d.projectwonderful_adbox_type = "4"; pw_d.projectwonderful_foreground_color = ""; pw_d.projectwonderful_background_color = ""; //--> </script> <script type="text/javascript" src="http://www.projectwonderful.com/ad_display.js"></script> <!-- End of Project Wonderful ad code. --> </li> </ul> </li> </ul> </div><!-- .sidebar --> <div class="main"><a class="nocss" id="content"></a> <div id="nav-above" class="navigation"> <div class="nav-previous"><a href="http://lukeshu.ath.cx/1/wordpress/2011/05/why-sed-i-exists/" rel="prev"><span class="meta-nav">←</span> Why `sed -i’ exists</a></div> <div class="nav-next"><a href="http://lukeshu.ath.cx/1/wordpress/2011/08/fixing-wrong-type-argument-characterp-return-in-emacs/" rel="next">Fixing “Wrong type argument: characterp, return” in !Emacs <span class="meta-nav">→</span></a></div> </div><!-- #nav-above --> <div id="post-82" class="post-82 post type-post status-publish format-standard hentry category-computers"> <h2 class="entry-title">[Emacs] autopair problems when using term-mode</h2> <div class="entry-meta"> <span class="meta-prep meta-prep-author">Posted on</span> <a href="http://lukeshu.ath.cx/1/wordpress/2011/08/emacs-autopair-problems-when-using-term-mode/" title="16:41" rel="bookmark"><span class="entry-date">2011/08/15</span></a> <span class="meta-sep">by</span> <span class="author vcard"><a class="url fn n" href="http://lukeshu.ath.cx/1/wordpress/author/lts/" title="View all posts by lts">lts</a></span> </div><!-- .entry-meta --> <div class="entry-content"> <p>I found this awesome blog post on the Korean blog <a href="http://seorenn.blogspot.com">Seorenn SIGSEGV</a>.</p> <p>Using Google translate, I was able to extract the information I needed. However, Google translate quite botched it, as did Yahoo and Bing translate. I’ve used a combination of these three tools, and my understanding of Emacs, to put together a more reasonable translation.</p> <p>I’m posting the full English text of it here because this is a problem I’ve had, and would like to help others find the solution. I don’t mean to rip off the original author, his blog seems quite good, worth reading, if you don’t mind poor translations (or, can read Korean).</p> <p>The original post can be found here <a href="http://seorenn.blogspot.com/2011/05/emacs-autopair-term-mode.html">here</a>.</p> <blockquote><p> In Emacs term-mode (<kbd>M-x term</kbd>) and multi-term-mode pressing the Enter key causes an error to appear in the mini-buffer, and the keystroke appears to have been eaten.</p> <p>This problem only occurs when using autopair. <span class="untranslated">are thought to In addition to or RET (Enter) as a separate feature for all modes of binding may also occur. if autopair the last of the solution are presented.</span></p> <p><span class="untranslated">See below sum up shoveling machine.</span></p> <h4>Issue</h4> <p>During term-mode RET does not work. The mini-buffer shows the error message <tt>Wrong type argument: characterp, return</tt>. RET has been bound to something here, <span class="untranslated">or maybe you saw the state I had a feeling heard nil.</span></p> <h4>Alternative</h4> <p>Fortunately, I was able to replace the RET key with <kbd>C-j</kbd>. This is used as a temporary measure to work with.</p> <h4>Cause Analysis</h4> <p>In term-mode use <kbd>C-h k</kbd> to find the function that RET is bound to. <span class="untranslated">autopair that certain functions were bound.</span></p> <p>As a result, be sure that autopair is the culprit.</p> <h4>Attempted Solution</h4> <p>In term-mode <kbd>C-h k</kbd> with <kbd>C-j</kbd> to determine the function bound to: <code>term-send-raw</code>. </p> <p>In conclusion, I believe you will solve the problem in the RET key bindings by using <code>define-key</code> to bind the key to <code>term-send-raw</code> in <code>term-mode-map</code>.</p> <p>But the code encounters an error. Is not allowed to do something it felt like.</p> <h4>Solution</h4> <p>The code below. Not two lines were able to solve it.</p> <pre> (add-hook 'term-mode-hook #'(lambda () (setq autopair-dont-activate t))) </pre> <p>Source of the above code: <a href="http://emacs-fu.blogspot.com/2010/06/console-apps-in-emacs-with-multi-term.html">http://emacs-fu.blogspot.com/2010/06/console-apps-in-emacs-with-multi-term.html</a> </p></blockquote> </div><!-- .entry-content --> <div class="entry-links"> </div> <div class="entry-utility"> This entry was posted in <a href="http://lukeshu.ath.cx/1/wordpress/category/computers/" title="View all posts in Computers" rel="category tag">Computers</a>. Bookmark the <a href="http://lukeshu.ath.cx/1/wordpress/2011/08/emacs-autopair-problems-when-using-term-mode/" title="Permalink to [Emacs] autopair problems when using term-mode" rel="bookmark">permalink</a>. </div><!-- .entry-utility --> </div><!-- #post-## --> <div id="nav-below" class="navigation"> <div class="nav-previous"><a href="http://lukeshu.ath.cx/1/wordpress/2011/05/why-sed-i-exists/" rel="prev"><span class="meta-nav">←</span> Why `sed -i’ exists</a></div> <div class="nav-next"><a href="http://lukeshu.ath.cx/1/wordpress/2011/08/fixing-wrong-type-argument-characterp-return-in-emacs/" rel="next">Fixing “Wrong type argument: characterp, return” in !Emacs <span class="meta-nav">→</span></a></div> </div><!-- #nav-below --> <div id="comments"> <h3 id="comments-title">One Response to <em>[Emacs] autopair problems when using term-mode</em></h3> <ol class="commentlist"> <li class="post pingback"> <p>Pingback: <a href='http://lukeshu.ath.cx/1/wordpress/2011/08/fixing-wrong-type-argument-characterp-return-in-emacs/' rel='external nofollow' class='url'>Fixing “Wrong type argument: characterp, return” in !Emacs | ltsBlog</a></p> </li> </ol> <div id="respond"> <h3 id="reply-title">Leave a Reply <small><a rel="nofollow" id="cancel-comment-reply-link" href="/1/wordpress/2011/08/emacs-autopair-problems-when-using-term-mode/#respond" style="display:none;">Cancel reply</a></small></h3> <form action="http://lukeshu.ath.cx/1/wordpress/wp-comments-post.php" method="post" id="commentform"> <p class="comment-notes">Your email address will not be published. Required fields are marked <span class="required">*</span></p> <p class="comment-form-author"><label for="author">Name</label> <span class="required">*</span><input id="author" name="author" type="text" value="" size="30" aria-required='true' /></p> <p class="comment-form-email"><label for="email">Email</label> <span class="required">*</span><input id="email" name="email" type="text" value="" size="30" aria-required='true' /></p> <p class="comment-form-url"><label for="url">Website</label><input id="url" name="url" type="text" value="" size="30" /></p> <p class="comment-form-comment"><label for="comment">Comment</label><textarea id="comment" name="comment" cols="45" rows="8" aria-required="true"></textarea></p> <p class="form-allowed-tags">You may use these <abbr title="HyperText Markup Language">HTML</abbr> tags and attributes: <code><a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> </code></p> <p class="form-submit"> <input name="submit" type="submit" id="submit" value="Post Comment" /> <input type='hidden' name='comment_post_ID' value='82' id='comment_post_ID' /> <input type='hidden' name='comment_parent' id='comment_parent' value='0' /> </p> </form> </div><!-- #respond --> </div><!-- #comments --> </div> <div class='footer'><a class='nocss' id='footer'></a> <div class="site-generator"> <a href="http://wordpress.org/" title="Semantic Personal Publishing Platform" rel="generator" class="site-generator">Powered by WordPress.</a> </div> <p class="valid">Valid <a href="http://validator.w3.org/check?uri=http%3A%2F%2Flukeshu.ath.cx%2F1%2Fwordpress%2Findex.php" id="link_validate_html">XHTML</a> and <a href="http://jigsaw.w3.org/css-validator/validator?uri=http%3A%2F%2Flukeshu.ath.cx%2F1%2Fwordpress%2Findex.php" id="link_validate_css" >CSS</a>. <br /><a href="/0/wordpress/index.php">Show (server side) source</a> </p> <p class='copyright'>Copyright © 2010, 2011 Luke Shumaker</p> <p class='license'>Verbatim copying and distribution of this entire article are permitted worldwide, without royalty, in any medium, provided this notice, and the copyright notice, are preserved.</p> </div> </body> </html>