Hi Pavel,
If I understand correctly, qgit doesn't do that. It calls external commands that are not implemented internally, and it doesn't aggregate anything. Then why not call them "external commands"?
Or just "commands"? in any case I agree "macro" was not a good choice.
The interface is quite confusing. I see 5 buttons on top, all of which are enabled, plus one button labeled as "...", three checkboxes, one single-line entry and one multiline entry. I have no I idea where to start. Should I click "new" or white something and then click "new"? And where's "Cancel"?. That's what I have tried: Enter "foo bar" in the multiline entry. Click "New" Enter "foobar" Click "New" Enter "abc" Select "foobar" Now "Run external script" is selected and "foo bar" is gone! I believe user input should not be discarded without a warning.
The bug is qgit lets you write the first foo bar, before you press NEW button. It shouldn't. Also some buttons enable/disable policy could be good.
I also tried something more meaningful. I create a "pull" macro as an external script "stg pull". It didn't work. Am I supposed to supply full path? Does it understand arguments? It the script supposed to be in a certain format? OK, stg is written in python, but how about cg-status, a shell script? It doesn't seen to work either.
You are not supposed to supply full path, any executable file should be OK and yes, you could supply arguments. You don't see nothing because of a silly bug.
What happens to the arguments qgit is asking for if a multiline entry is executed? I understand they are prepended to the first line. This is not quite logical. Wouldn't it be better to have a shell like notation for them?
I thought of commands sequence as a quick way to run some simple commands as git pull, git push or similar without writing a bash script, i.e. no $1 for arguments. If you need something more complex the external script is supposed to be the proper way. Perhaps we could remove the external script single edit line and use only the multiline edit to let user insert commands or script.
I see the macros are saved in the qgit configuration for the user .qt/qgitrc, like this:
Well, this file is really not meant to be view nor to be modified by hand, it is mainly a qgit 'private' thing stuff. Being qgit a GUI tool with a (nice ;-) ) settings dialog, configuration file is mainly used for persistency, not for browsing/setup. I hope to fix the external commands interface bugs this week-end. Thanks for your reports Marco - : send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html