qjebbs / vscode-plantuml

Rich PlantUML support for Visual Studio Code.
MIT License
1.09k stars 155 forks source link

Feature Request: Export folder diagrams to path relative to folder #249

Open ianisms opened 5 years ago

ianisms commented 5 years ago

Would love to be able to right click on a folder ex:

/Project/Services/ServiceX/Documentation/Diagrams/src

And have the diagrams generated in a folder relative to the src ex:

/Project/Services/ServiceX/Documentation/Diagrams/out

qjebbs commented 5 years ago

This is only useful if user keeps export diagrams to different folder, or I don't see the necessity, please use plantuml.exportOutDir(in workspace setting if you want different out dir for different project).

mrkintaro commented 5 years ago

The point is if you have a workspace with different project, the export will be at the same level for all projects and not related to the project itself.

git/GitPrj01/test1.wsd git/GitPrj02/test2.wsd

Outputs are in git/out/GitPrj01/test1.png git/out/GitPrj02/test2.png

And is not possible to put them in the repository of the wiki, I need to copy them always to the correct folder.

I would like to have :

git/GitPrj01/out/test1.png git/GitPrj02/out/test2.png

qjebbs commented 5 years ago

@mrkintaro Use multi-root workspace feature of VSCode instead

tforster commented 4 years ago

This would be useful for me too. I edit Azure DevOps wikis in VSCode. DevOps wikis use a hidden .attachments folder. In this folder I have my plantuml source files and I would like my generated diagrams to go here too. Then, when I push the repo back up I can link to the images but the wiki UI does NOT show the .attachments folder.

qjebbs commented 4 years ago

@tforster See #typical-files-organization, and change the plantuml.exportOutDir

retorquere commented 3 years ago

I also use plantuml for DevOps wiki's, and I'd prefer to just have the generated image alongside the plantuml source in the same directory as the markdown document that includes it. Diagrams typically appear in exactly one document in our case.

qjebbs commented 3 years ago
{
  "plantuml.exportOutDir": "."
}
chipbite commented 3 years ago

Hi! Contributing our use case/our situation: For our repos/projects, I see the need to have 2 different locations for diagrams, depending on the diagram scope, etc:

  1. General ("central") solution diagrams. In a folder relative to the workspace root. ✅ This is currently supported.
  2. Diagrams explaining specifics for a certain class, etc. Would want to have in different source folders. I would want an out folder generated for this, like for the "central" diagrams. This is not really possible, AFAIK.

Example:

\duck-project\
    \docs\
        middleearth-overview.puml
        \out\
            middleearth-overview.png
    \foo-area-a\
        \gandalf-a1\
            gandalf-a1-flow.puml
            \out\
                gandalf-a1-flow.png
        \elrond\
        \bilbo\
        \docs\
            foo-area-overview.puml
            \out\
                foo-area-overview.png
    \mordor-area-b
        \sauron-b1
            sauron-creates-orchs-flow.puml
            \out\
                sauron-creates-orchs-flow.png
        \sauron-b2
            sauron-spy-organization-flow.puml
            \out\
                sauron-spy-organization-flow.png
        \sauron-b3
            sauron-deployments-flow.puml
            \out\
                sauron-deployments-flow.png
        \docs\
            mordor-overview.puml
            \out\
                mordor-overview.png

But you cant have both at the same time, AFAICS, right? I have not been able to make it work.

Using a relative path would allow you to do that though - have one pattern or scheme that applies both to central diagrams and to diagrams in different source folders.

Thanks for a great plugin!

vintprox commented 2 years ago

To save in alongside the original graph:

{
  "plantuml.exportOutDir": ".",
  "plantuml.exportSubFolder": false
}
garcipat commented 2 years ago

I have the exact same scenario as @chipbite. We have modules and every module has its documentation with its diagrams. I just want to export diagrams relative to its puml file.

kay-haensge commented 1 year ago

Can't this be the default behaviour?

{
  "plantuml.exportOutDir": ".",
  "plantuml.exportSubFolder": false
}

Thanks @vintprox