update plantuml-icon-font-sprites

0 votes
asked Aug 16 in Wanted features by valexiev (790 points)
edited Aug 16 by valexiev

http://plantuml.com/stdlib claims that plantuml-icon-font-sprites is integrated into the jar.

I'm trying to replicate https://github.com/tupadr3/plantuml-icon-font-sprites/blob/master/examples/complex-example.puml using PlantUML version 1.2018.10beta4, but get this error:

Preprocessor Error: Cannot include <font-awesome-5/server.puml>

There is no error eg on ' <font-awesome/gears.puml>. So, it seems to me stdlib needs to be updated to use the latest.

I finessed it like this, mixing "include <builtin>" with "includeurl" :-(.

Please note the new location of common.puml is in the root of, not under font-awesome. I think it would conflict with other stdlib builtins?

(Note to self: it's cleaner to skip the .puml extension when including a builtin)

1 Answer

+1 vote
answered Aug 24 by plantuml (189,260 points)
selected Aug 25 by valexiev
 
Best answer

So, it seems to me stdlib needs to be updated to use the latest.

Yes, you're right.

Last version of https://github.com/tupadr3/plantuml-icon-font-sprites/ contains several folders, so we slightly change its integration into PlantUML stdlib.

With last beta http://beta.plantuml.net/plantuml.jar you can now have:

@startuml

skinparam defaultTextAlignment center

!include <tupadr3/common>
!include <tupadr3/font-awesome-5/server>
!include <tupadr3/font-awesome-5/gitlab>
!include <tupadr3/font-awesome/gears>
!include <tupadr3/font-awesome/fire>
!include <tupadr3/font-awesome/clock_o>
!include <tupadr3/font-awesome/lock>
!include <tupadr3/font-awesome/cloud>

!include <tupadr3/devicons/nginx>
!include <tupadr3/devicons/mysql>
!include <tupadr3/devicons/redis>
!include <tupadr3/devicons/docker>
!include <tupadr3/devicons/linux>

FA_CLOUD(internet,internet,cloud) #White {

}

DEV_LINUX(debian,Linux,node){

    FA_CLOCK_O(crond,crond) #White
    FA_FIRE(iptables,iptables) #White

    DEV_DOCKER(docker,docker,node)  {
        DEV_NGINX(nginx,nginx,node) #White
        DEV_MYSQL(mysql,mysql,node) #White
        DEV_REDIS(redis,redis,node) #White
        FA5_SERVER(nexus,nexus3,node) #White
        FA5_GITLAB(gitlab,gitlab,node) #White
        FA_GEARS(gitlabci,gitlab-ci-runner,node) #White

        FA_LOCK(letsencrypt,letsencrypt-client,node) #White
    }
}

internet ..> iptables : http

iptables ..> nginx : http
nginx ..> nexus : http
nginx ..> gitlab : http
gitlabci ..> gitlab : http
gitlab ..> mysql : tcp/ip
gitlab ..> redis : tcp/ip

crond --> letsencrypt : starts every month
@enduml

Does it sound good ?

...