Old 11-05-2012, 11:14 AM   #1
cyrilfb
Human being with feelings
 
cyrilfb's Avatar
 
Join Date: Apr 2012
Location: Denver, CO
Posts: 222
Default ReaperDoc written in Python custom action

This is for discussion the announcement is also in the sticky tools thread.

I have rewritten ReaperDoc as a Python script. ReaperDoc2 is a tool to produce documentation of a project from the project file (.RPP). The original was written by Gregg Reno in Visual Basic. Using his project as a template I have written it in Python so that it can be used either standalone or as a custom action within Reaper. It is intended to work on both Mac and PC computers.

The installation and documentation are found in the file reaperdoc.htm in the download.

This is a BETA test. The known errors currently are:
1. On Mac it runs standalone but not as custom action. Any one know Mac?
2. On Windows Vista, sometimes the window is hidden behind Reaper and Reaper must be minimized to see it.

Get it here:
https://stash.reaper.fm/14504/ReaperDoc2.zip
__________________
Cy Ball
Reaper + inspiration = music.
cyrilfb.com or soundcloud.com/cyball
cyrilfb is offline   Reply With Quote
Old 12-02-2012, 02:45 AM   #2
MichaJo
Human being with feelings
 
MichaJo's Avatar
 
Join Date: Oct 2008
Location: Germany
Posts: 1,767
Default

Just found this. Didn't know such a tool exists.
Thanks!

Michael
MichaJo is offline   Reply With Quote
Old 12-05-2012, 05:16 PM   #3
Anton9
Human being with feelings
 
Anton9's Avatar
 
Join Date: Jun 2009
Location: Earth
Posts: 1,298
Default

Hi cyrilfb,

Thank you for the conversion.., this is a handy tool. I have however found some bugs.

Example:
Say you have a saved project which has 1 effect. Run ReaperDoc2 and everythig appears fine, however if you add 2nd different effect, save the project and click "Create File" the resulting file will show two effects, but they are both listed as the same effect(name).., that being effect #1.

Note: This only happens if you don't exit the ReaperDoc2 script during the entire process. If you exit ReaperDoc2 and rerun it, it then produces the correct output. Perhaps a refresh button could be added to the tkinter dialog?

One other thing regarding FX:
It would be nice to have a separate field or indicator for Track-FX vs Item-FX.
---------------------------------------------------------------------------------------------------------------------------
sends/Receive Bugs:

There are also some bugs with the output regarding Sends/Receives.

Example 1:

Create two tracks and add a send from trk-1 to trk-2.
Run ReaperDoc2 using "list_template" and you'll notice that in both the Sends and Receives columns for trk-2 is listed "Trk 2:"
The output for trk-1 should show "Trk 2:" in the sends column and the output for trk-2 should show "Trk 1:" in it's receives column.

Example 2:

Create three tracks, add a send from trk-1 to trk-2 and add another send from trk-1 to trk-3.
Run ReaperDoc2 and you'll notice the output for trk-2 shows "Trk 2:", "Trk 3:" in the Sends column and "Trk 2:" listed in the Receives column for both trk-2 and trk-3.
The output should actually show "Trk 2:", "Trk 3:" in the Sends column of trk-1.., and "Trk 1:" in both the trk-2 and trk-3 Receives column.

Notes: There also appears to be a similar type of issue as with the effects bug.., where if you leave the ReaperDoc2 script running during the whole process and just overwrite the output file. Doing the same as in Example 1: the output will show "Trk 2:" in the Sends column of trk-2. "Trk 2:" will also be listed twice in the Receives column of trk-2 and once in trk-3's Receives column.

I also tried using the "more_details_template" and it's output is messed up as well.

--------------------------------------------------------------------------------------------------------------------------------

Just thought of something that would make for an awesome addition to ReaperDoc2..., and that would be an option to also capture the values of FX parameters. Then perhaps the listed FX names could be setup as hyper-links so when a person clicks on one of the FX names a page would appear showing the parameter values of that effect.
--------------------------------------------------------------------------------------------------------------------------------

I've also noticed some issues when using the CSV template.

1) When you set (File\Preferences\Separator) to "comma" and a track contains more than one effect each subsequent effect is placed in a new column instead of a new row. Example: VST-1 gets placed in the Effects column and VST-2 ends up in the Sends column when importing into EXcel.

2) The output value of the "Sample Rate:" field should be left justified..., as it is now, it appears all way to the right in the cell.
Anton9 is offline   Reply With Quote
Old 12-07-2012, 08:38 AM   #4
cyrilfb
Human being with feelings
 
cyrilfb's Avatar
 
Join Date: Apr 2012
Location: Denver, CO
Posts: 222
Default bugs/ suggestions

Thanks anton9,

I will try to look at this in the next few days.
__________________
Cy Ball
Reaper + inspiration = music.
cyrilfb.com or soundcloud.com/cyball
cyrilfb is offline   Reply With Quote
Old 12-14-2012, 07:30 PM   #5
cyrilfb
Human being with feelings
 
cyrilfb's Avatar
 
Join Date: Apr 2012
Location: Denver, CO
Posts: 222
Default New version of ReaperDoc2

I have uploaded a new final release of ReaperDoc2.

Quote:
Originally Posted by Anton9 View Post
Say you have a saved project which has 1 effect. Run ReaperDoc2 and everythig appears fine, however if you add 2nd different effect, save the project and click "Create File" the resulting file will show two effects, but they are both listed as the same effect(name).., that being effect #1.
Quote:
Originally Posted by Anton9 View Post
Create two tracks and add a send from trk-1 to trk-2.
Run ReaperDoc2 using "list_template" and you'll notice that in both the Sends and Receives columns for trk-2 is listed "Trk 2:"
The output for trk-1 should show "Trk 2:" in the sends column and the output for trk-2 should show "Trk 1:" in it's receives column.
The above initialization problems are fixed.

Quote:
Originally Posted by Anton9 View Post
Create three tracks, add a send from trk-1 to trk-2 and add another send from trk-1 to trk-3.
Run ReaperDoc2 and you'll notice the output for trk-2 shows "Trk 2:", "Trk 3:" in the Sends column and "Trk 2:" listed in the Receives column for both trk-2 and trk-3.
The output should actually show "Trk 2:", "Trk 3:" in the Sends column of trk-1.., and "Trk 1:" in both the trk-2 and trk-3 Receives column.

Notes: There also appears to be a similar type of issue as with the effects bug.., where if you leave the ReaperDoc2 script running during the whole process and just overwrite the output file. Doing the same as in Example 1: the output will show "Trk 2:" in the Sends column of trk-2. "Trk 2:" will also be listed twice in the Receives column of trk-2 and once in trk-3's Receives column.
Fixed..

Quote:
Originally Posted by Anton9 View Post
1) When you set (File\Preferences\Separator) to "comma" and a track contains more than one effect each subsequent effect is placed in a new column instead of a new row. Example: VST-1 gets placed in the Effects column and VST-2 ends up in the Sends column when importing into EXcel.
This is csv acting the way it is defined to act. Commas force an entry into the next column. I think understand what you want and have added "linefeed" as a separator option and modified the csv template to use it properly to get line breaks in a cell.

Quote:
Originally Posted by Anton9 View Post
2) The output value of the "Sample Rate:" field should be left justified..., as it is now, it appears all way to the right in the cell.
This is Excel right-justifying a number as it is supposed to do. I see what you want though and it would be more readable. I modified the csv template to treat Sample Rate as a text field which means left-justified.

Anton9, Thanks for all of your work and for your suggestions. I have not been able to include your requested enhancements, but they are on my list of things to consider..

The new version is on the stash here:
https://stash.reaper.fm/14504/ReaperDoc2.zip

This is a list of all changes:
Bugs Fixed:
1 When used to create files multiple times without closing and reopening, FX, Sends and Receives were corrupted and reported incorrect track names and/or numbers.
2 Sends and Receives sometimes reported incorrect track names and/or numbers and sometimes crashed for reasons other than the above.
3 The csv template created a tab delimited file instead of a comma delimited file and produced inconsistent results when lists of FX, Sends, Receives were produced. It was also modified to format "Sample Rate" as left-justified instead of right-justified.
4 Sometimes when used as a custom action in Reaper, the ReaperDoc2 window would display behind the Reaper window and could only be seen by minimizing Reaper. This may be only partially fixed. It seems to depend on operating system and available memory.

Enhancements:
1 Paths may be typed into the file selection windows instead of using the browser buttons if the user chooses.
2 The browsers for output file and template file will now show all files instead of just .htm and .html. This allows the user to user to select and or name other file types.
3 Because of the above, if you name an output file "something.csv", it will open in Excel or Open Office or Libre Office if one of those is associated with .csv files. ".txt" files should open in a text editor.
4 More selections including "linefeed" were added for "Separator" in the Preferences dialog. See Documentation/Help for more on this.
5 Documentation/help file changed to reflect the above.

I hope you find this useful.
__________________
Cy Ball
Reaper + inspiration = music.
cyrilfb.com or soundcloud.com/cyball

Last edited by cyrilfb; 12-14-2012 at 07:41 PM.
cyrilfb is offline   Reply With Quote
Old 01-02-2013, 06:05 PM   #6
Anton9
Human being with feelings
 
Anton9's Avatar
 
Join Date: Jun 2009
Location: Earth
Posts: 1,298
Default

Hey Cy,

I meant to reply sooner but got busy with a few things. Good job on the update, it appears to be working great so far.

Thank you,

Anton9
Anton9 is offline   Reply With Quote
Old 05-15-2014, 10:12 AM   #7
zedug
Human being with feelings
 
Join Date: Aug 2010
Location: Paris
Posts: 16
Default

Hello

I'm trying to run this great tool on a 4.61/x64 rpp file and it consistently craps out with this error message:

Code:
Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\Python34\lib\tkinter\__init__.py", line 1482, in __call__
    return self.func(*args)
  File "C:\Users\Laurent\AppData\Roaming\REAPER\Scripts\ReaperDoc2\ReaperDoc2.py
", line 168, in btn_ok
    apply()
  File "C:\Users\Laurent\AppData\Roaming\REAPER\Scripts\ReaperDoc2\ReaperDoc2.py
", line 133, in apply
    rdSubs.readprojectfile(rdDef.docDefaults[rdDef.defProject])
  File "C:\Users\Laurent\AppData\Roaming\REAPER\Scripts\ReaperDoc2\readocSubs.py
", line 304, in readprojectfile
    ItemInfo[itrk][itm]['iPan'] = float(TDValues[2])
IndexError: list index out of range
whatever the RPP or the template used... and I'm sorry to say that I'm anything but a python programmer

has anyone faced the same issue ?

thanks,
-z
zedug is offline   Reply With Quote
Old 01-24-2017, 09:29 PM   #8
pipelineaudio
Mortal
 
pipelineaudio's Avatar
 
Join Date: Jan 2006
Location: Wickenburg, Arizona
Posts: 11,322
Default

any new version of this?
__________________
REAPER Shirts are Back! - http://reapermerch.com
pipelineaudio is online now   Reply With Quote
Old 01-25-2017, 11:08 AM   #9
cyrilfb
Human being with feelings
 
cyrilfb's Avatar
 
Join Date: Apr 2012
Location: Denver, CO
Posts: 222
Default No updates

No changes have been considered. Actually, I had forgotten that I put this up until now.

I was not aware that people are using it.
__________________
Cy Ball
Reaper + inspiration = music.
cyrilfb.com or soundcloud.com/cyball
cyrilfb is offline   Reply With Quote
Old 07-17-2017, 03:38 PM   #10
Twangothan
Human being with feelings
 
Twangothan's Avatar
 
Join Date: Oct 2011
Location: Hertfordshire, UK
Posts: 340
Default

On a similar note I wanted to print out the FX browser to PDF as a backup of all the plugs I have, as a last resort recover option. Is this possible? Maybe just print screen.
Twangothan is offline   Reply With Quote
Old 07-17-2017, 06:30 PM   #11
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 4,006
Default

Maybe you will be interested by my HTML exporter script.
https://www.extremraym.com/en/downlo...s-html-export/

It is based on Lua and HTML CSS JavaScript so it is very easy to mod and customize
X-Raym is offline   Reply With Quote
Old 07-17-2017, 07:27 PM   #12
cyrilfb
Human being with feelings
 
cyrilfb's Avatar
 
Join Date: Apr 2012
Location: Denver, CO
Posts: 222
Default

Quote:
Originally Posted by Twangothan View Post
On a similar note I wanted to print out the FX browser to PDF as a backup of all the plugs I have, as a last resort recover option. Is this possible? Maybe just print screen.
I am not sure if python can access the list of available FX. At first glance, I did not see a proper call for it.

At this time, I don't have time to pursue it.

Sorry,
Cy
__________________
Cy Ball
Reaper + inspiration = music.
cyrilfb.com or soundcloud.com/cyball
cyrilfb is offline   Reply With Quote
Old 07-18-2017, 08:16 AM   #13
Twangothan
Human being with feelings
 
Twangothan's Avatar
 
Join Date: Oct 2011
Location: Hertfordshire, UK
Posts: 340
Default

Quote:
Originally Posted by cyrilfb View Post
I am not sure if python can access the list of available FX. At first glance, I did not see a proper call for it.

At this time, I don't have time to pursue it.

Sorry,
Cy
Thanks anyway, it's no biggie.
Twangothan is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 11:44 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2017, vBulletin Solutions Inc.