[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [bug-recutils] Several questions and comments
From: |
Brian Zwahr |
Subject: |
Re: [bug-recutils] Several questions and comments |
Date: |
Mon, 28 Jan 2019 13:50:55 -0600 |
> That's a nice idea. I just wrote it down. Of course they would only do
> that when they are invoked interactively, right?
Yes, I would think so. It'd be a great addition!
> Would you like to give it a try? :)
If I can find the time, I just might. I probably won't find the time, though,
especially since I'd have to learn/relearn the programming language. :-)
> You will have to concatenate several sorts for that.
What do you mean by this? I don't understand. Do you have an example?
> I will fix [the network drive bug] soon in a new release.
Awesome! I look forward to it!
On Sat, Jan 26, 2019, at 9:48 AM, Jose E. Marchesi wrote:
>
> Hello Brian.
>
> I've been using recutils, and I really like it! I've found it to be
> quite useful. However, I've read through the documentation, and there's
> several things I either don't know how to do, don't work, or that I
> think would be good to be able to do. I'd like to mention them all here
> and see if anyone has answers or suggestions.
>
> Let's see if I can be of any help... :)
>
> 1) Is there a way to programmatically create and defined a record type?
> recins and recset let you add record entries of a given type, but I
> don't see any commands, arguments, or flags that let you define a new
> record type with fields, constraints, etc.
>
> Currently, no, there isn't a way to do that programmatically.
>
> I always thought it would be the role of "recinf" to _read_ the
> properties of a record set... but setting them... no.
>
> I guess it would be nice to have something like that. After all, record
> descriptors are just records? or they aren't? :)
>
> 2) With recset, is it possible to set multiple fields at once?
>
> Yes. You can specify several fields with -f, like in:
>
> $ recset -f foo,bar -s XXX foo.rec
>
> 3) With recins/recset, I think it'd be great to see the added/updated
> records. Currently, I use recsel to find the record I want to update,
> then use recset to update it, then use recsel again to see the
> updated record to make sure it was updated properly. It'd be nice if
> that third setup wasn't necessary because recset did it
> automatically.
>
> That's a nice idea. I just wrote it down. Of course they would only do
> that when they are invoked interactively, right?
>
> 4) Is there a way to disallow all types that aren't defined as
> mandatory or allowed for a type? I'd like to restrict a record type
> to only the specifically defined fields. This would be useful in
> preventing typos, like accidentally adding "Noets" instead of
> "Notes" to a record.
>
> That's the purpose of %allowed. From the user manual:
>
> "If there are more or one '%allowed' fields in a record descriptor, all
> fields of all the records in the record set must be in the union of
> '%allowed', '%mandatory' and '%key'. Otherwise an integrity error is
> raised."
>
> 5) Is it possible to update text fields by appending to them? I have a
> Notes field that I use, which I will occasionally update by appending
> to it. Currently, I either have to use recsel to get the current
> value, then edit the record with the current value appended by the
> new notes I want to add or I have to manually edit the document.
>
> No, that's not possible. I guess this could be achieved adding a new
> option to recset... -A maybe? Or more generally, figuring out a way to
> refer to the existing contents of the field in -s or -S. Would you like
> to give it a try? :)
>
> 6) Is it possible to define multiple fields for sorting with %sort%?
> For instance, if I want to sort by Brand then Product, instead of
> just Brand.
>
> Nope. You will have to concatenate several sorts for that.
>
> 7) This is specific to the macOS Homebrew installation of recutils, but
> the info documentation didn't get installed. Does anyone happen to
> know how to fix that or get it installed?
>
> No clue.
>
> 8) Commands that modify a recfile, like recins, recset, and recfix --
> auto, don't seem to work when the recfile is on a network drive. For
> instance, I use pCloud for cloud storage (instead of Dropbox, etc.).
> pCloud works first and foremost by setting up basically a cloud
> network drive on your computer. On macOS, it's at ~/pCloud Drive and
> on Windows its drive P: (which I mount to /mnt/p in the Windows Linux
> Subsystem), by default. Trying to modify recfiles directly in these
> locations fails. For instance, just now on my Mac, trying to edit a
> file with recfix --auto results in:
> recfix: error: renaming file
> /var/folders/2p/2ksrj79s3tj08ztq2q4lh5280000gn/T/recQi0IZr to test.rec
> Seems like it can copy the file to a temporary file, which it then
> modified, then when it tried to copy the modified temp file back to
> replace the original recfile, it can't.
>
> Yes, I am aware of that bug. Basically, recutils is using the rename(2)
> standard function, that does not work across filesystems. I will fix it
> soon in a new release.
>
> 9) Small English grammar note: On the FAQ, page one of the questions is
> "What is the name of the turtles?" but it should be "What are the
> names of the turtles?" instead.
> https://www.gnu.org/software/recutils/faq.html
>
> I just fixed that right now!
> Thanks, and welcome!