Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
Community Members
Community Events
Community Groups

Any work arounds to create links with # and ! characters in Crucible comments?

I recenlty wrote up CRUC-6408, which is a regression of the original issue CRUC-5238. These issues are related to using urls with # characters denoting anchors. Originally, urls with # characters would simply not work but surrounding them with square brackets would maintain the integrity of the link.

With some more recent verison of Crucible, this has regressed even worse, which is why I wrote up the additional issue. It used to be that links with a # followed by some other additional character like ! would get generated correctly using the work around. Now, that is not the case, or at least I haven't found one. An example url that fails is!/api/Ext-method-onReady.

While I wait for Atlassian to respond to my issue in the Crucible JIRA, I'm getting desparate as it is an extreme waste of time for our devs to navigate through documentation to what we want, rather than just linking directly to it. I can copy and paste material, but that bloats the comments unnecessarilly. Is anyone aware of a work around that will maintain the integrity of these links?

1 answer

1 accepted

2 votes
Answer accepted
Tom Davies Atlassian Team Mar 20, 2013

This is a bug which will be fixed in Crucible 2.10.4 and 3.0

In older versions you can edit syntax/url.def in your installation directory and replace the http/https definition with:

# http/https
  /\b(?:https?:\/\/(?:(?:(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?&=])*)(?::(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?&=])*))?@)?(?:(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(?:\d+)){3}))(?::(?:\d+))?))(?:\/(?:(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),~]|(?:%[a-fA-F\d]{2}))|[;:@&=])*)(?:\/(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),~]|(?:%[a-fA-F\d]{2}))|[;:@&=])*))*)(?:\?(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),~]|(?:%[a-fA-F\d]{2}))|[;:@&=])*))?)?(?:#(?:[\/\?!a-zA-Z0-9_:.%,\-()~]*)?)?)/ : {
    region {href="${0}";}

Crucible will need to be restarted to pick up the change.

Thanks Tom - changing that and recycling the fisheye crucible instance did the trick.

Suggest an answer

Log in or Sign up to answer

Atlassian Community Events