From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: seberino@spawar.navy.mil (Christian Seberino) Newsgroups: gmane.emacs.help Subject: Re: How run a command JUST on region highlighted by MOUSE?!?! Date: 2 Sep 2003 17:16:06 -0700 Organization: http://groups.google.com/ Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Message-ID: References: <5yu3b.865304$3C2.19502799@news3.calgary.shaw.ca> <3F4FC986.4060602@yahoo.com> NNTP-Posting-Host: deer.gmane.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: sea.gmane.org 1062625020 30533 80.91.224.253 (3 Sep 2003 21:37:00 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 3 Sep 2003 21:37:00 +0000 (UTC) Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Wed Sep 03 23:36:58 2003 Return-path: Original-Received: from monty-python.gnu.org ([199.232.76.173]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 19ufJC-00026C-00 for ; Wed, 03 Sep 2003 23:36:58 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.22) id 19ufEH-0008V7-Qt for geh-help-gnu-emacs@m.gmane.org; Wed, 03 Sep 2003 17:31:53 -0400 Original-Path: shelby.stanford.edu!newsfeed.stanford.edu!postnews1.google.com!not-for-mail Original-Newsgroups: gnu.emacs.help Original-Lines: 85 Original-NNTP-Posting-Host: 198.253.72.211 Original-X-Trace: posting.google.com 1062548167 10458 127.0.0.1 (3 Sep 2003 00:16:07 GMT) Original-X-Complaints-To: groups-abuse@google.com Original-NNTP-Posting-Date: 3 Sep 2003 00:16:07 GMT Original-Xref: shelby.stanford.edu gnu.emacs.help:116330 Original-To: help-gnu-emacs@gnu.org X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.2 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: main.gmane.org gmane.emacs.help:12250 X-Report-Spam: http://spam.gmane.org/gmane.emacs.help:12250 Kevin Thanks for your help. I finally got a version that works! (defun cs-py-comment-region(beg end) (interactive "r") (save-restriction (narrow-to-region beg end) (py-comment-region beg end) (delete-trailing-whitespace))) What does the (interactive "r") do??? I really ONLY ever invoke my functions with key-combos that are hard wired to start the functions....e.g. C-ac, C-z, etc.... Does this mean I can omit all this (interactive ..) stuff from .emacs everywhere??? It appears that beg and end got automagically set when I dragged mouse over some region. It also appears that although py-comment-region did not need it's 2 args without narrow-to-region part... it does now when I add the narrow-to-region part and that was the main bug. Thank goodness it works but there is a lot going on I don't understand here about how arguments get defined and (interactive..) function. Any help would be greatly appreciated. Sincerely, Chris Kevin Rodgers wrote in message news:<3F4FC986.4060602@yahoo.com>... > Christian Seberino wrote: > > > I set .emacs up to run this function when I highlight a region with > > mouse > > and type C-ac..... > > > > (defun cs-py-comment-region() (interactive) > > (narrow-to-region) > > (py-comment-region) > > (delete-trailing-whitespace) > > (widen)) > > > > I'm getting this error message... > > > > cs-py-comment-region: Wrong number of arguments: #, 0 > > (New file) > > Mark set > > cs-py-comment-region: Wrong number of arguments: #, 0 > > > > I read Emacs LISP reference manual on narrow-to-region and it said.. > > > > Command: narrow-to-region start end > > This function sets the accessible portion of the current buffer to > > start at start and end at end. Both arguments should be character > > positions. > > > > In an interactive call, start and end are set to the bounds of the > > current region (point and the mark, with the smallest first). > > > > > > I assume "interactive call" = "highlighted a region with mouse"?? > > > > It seems narrow-to-region should get the start and end point values > > automatically??! > > It does when you call it interactively. When you call it programmatically, > you need to specify the START and END arguments: (region-beginning) and > (region-end), respectively. > > Your cs-py-comment-region function should take 2 arguments, provide a > way for them to be specified when it's called interactively, and pass > the region bounds to py-comment-region: > > (defun cs-py-comment-region (beg end) > (interactive "r") > (py-comment-region beg end) > ...)