From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 66575 invoked by alias); 28 Sep 2015 17:54:38 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 65210 invoked by uid 89); 28 Sep 2015 17:54:37 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_HELO_PASS,SPF_PASS,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: plane.gmane.org Received: from plane.gmane.org (HELO plane.gmane.org) (80.91.229.3) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-SHA encrypted) ESMTPS; Mon, 28 Sep 2015 17:54:36 +0000 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1Zgcd8-0000fX-Fo for cygwin@cygwin.com; Mon, 28 Sep 2015 19:54:27 +0200 Received: from S010690fba62c4bda.cg.shawcable.net ([96.51.88.197]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 28 Sep 2015 19:54:26 +0200 Received: from Brian.Inglis by S010690fba62c4bda.cg.shawcable.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 28 Sep 2015 19:54:26 +0200 To: cygwin@cygwin.com From: Brian Inglis Subject: Re: Regtool can't set default value? Date: Mon, 28 Sep 2015 17:54:00 -0000 Message-ID: References: <56096E62.2030606@dd-b.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit User-Agent: Loom/3.14 (http://gmane.org/) X-IsSubscribed: yes X-SW-Source: 2015-09/txt/msg00498.txt.bz2 David Dyer-Bennet dd-b.net> writes: > > I'm not sure I'm understanding this right. I'm trying to duplicate a > manual setup that works (for making text files in general have an edit > right-click option that invokes emacsclientw). > > In that manual setup, (sorry, using cygwin path notation while referring > to regedit, of course in regedit the path shows in Windows notation) > I've set up /root/txtfile/shell/edit/command with a value named > "(Default)" of type REG_EXPAND_SQ whose data is a (windows-style of > course) path to emacsclientw.exe (plus some switches plus "%1" for the > file name at the end). That works -- the right-click menu for a file > known to Windows as a txtfile (like foo.txt) has an "edit" entry, which > when clicked invokes emacsclientw. > > I'm trying to create this in a script using cygwin regtool. I can > create a key of /root/txtfile/shell/edit with a value of command having > the right data -- but that of course does not work. I can create a key > of /root/txtfile/shell/edit/command with *two* values named (Default), > the second of which is my value -- but that also does not work. (And I > can't delete the first value (Default) even in regedit.) > > I clearly don't understand something about the data that Regedit > displays under the name (Default), and how to create, delete, get, and > set value to it. > > How do I create this simple scenario using regtool? (It's not actually > emacs-specific, if you look at the default Windows registry for > /root/txtfile/shell/open/command you'll find a value named "(Default)" > of type REG_EXPAND_SZ giving a path to notepad.exe. If I wanted to > produce that using regtool, how would I do that?) > > (If there's no way to do it with regtool, that's weird, and in > particular a huge deficit in regtool since configuring preferred > handling of various file-types seems like one of the things you'd really > want to be able to do. > > (It *ought* to be possible for my script to write a .reg file that it > then feeds to regedit as an alternative way to do it, and if I can't > make regtool work I'll try that, but I don't need suggestions about > that, at least not yet -- I know how to do that, but am currently trying > to understand regtool, and will only give up if we determine fairly > authoritatively that regtool can't do what I need.) Use regedit export and import and Cygwin ls /proc/registry as well as regtool list on your entries to compare what works and what doesn't. You will probably find that in your script you need to quote quotes (") and backslashes (\), possibly multiple times, to get the path strings set properly - exported .reg files contain backslashed quotes, so getting that working in a script requires extra backslashes and/or quotes. Testing scripts by running via bash -vx script can show useful info like substitution results. Somewhere I can't find just now documents that some tool(s) use "@" to name (Default) - it is not actually named "(Default)". -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple