Submitted by Paul_J_Miller on 2018/01/27 18:48
One thing which I would have expected InfoQube to be good at is linking. True it can link to files, web pages and other items within InfoQube but there is a very useful type of link which is missing.

A universal link is a link to specific content within the file of an application.  For instance Essential PIM Pro allows you to copy a link which will point to a specific e-mail in a specific database created in Essential PIM Pro.  This can be activated from another application and will not only start up Essential PIM but open the specific e-mail to which the link points.

There is a protocol which the application needs to register with the operating system when it is installed, once registered if the operating system receives a link of the correct format it will pass the link to the specified application.

As an example of what they look like a link to one of the e-mails in Essential PIM looks like :-

epim://D:\Data\EPIM\Pauls.epim/mails/544385275277860595

the bit up to the :// is the string which is registered with the operating system, the rest is application specific.

As another example a link to a topic in my ConnectedText notes looks like :-

ct://Potek/HD%20Clone%20Notes

again the bit before the :// specifies the application to which the link points but the rest of it is almost human readable once you realise that ‘%20’ is the space character.

So a universal link is like a URL but it points to specific content within a specific application on the local machine.

Microsoft OneNote supports universal links both in and out.  Right clicking on a paragraph brings up a context menu with one of the options as 'copy a link to this paragraph'.

InfoQube also has an option under 'copy' of 'copy as hyperlink' but this link format is not usable outside InfoQube, also any universal link to another application pasted into InfoQube is not functional.

It would be nice if InfoQube had full support for universal links.

Comments

Hi Paul,
 
Excellent suggestion which will be quite easy to do as IQ is already using a bridge application for the extensions and the universal clipper (visible to users when 2 or more IQBases are opened)
 
Pierre_Admin
IQ Designer
 

WayneK

2018/01/27 20:55

In reply to by Pierre_Admin

Great news.  I hope you can make this work for pdf's.  That would be huge for me.  I've been looking for some kind of universal bookmark program and never considered it could be done from within InfoQube.
 
Wayne
 

Pierre_Admin

2018/01/27 22:16

In reply to by WayneK

[quote=WayneK]
I've been looking for some kind of universal bookmark program and never considered it could be done from within InfoQube.
[/quote]
 
Can you explain in more details ? You can already link PDF files in IQ, in many ways...
 
Pierre_Admin
IQ Designer
 

WayneK

2018/01/28 00:07

In reply to by Pierre_Admin

You can link to a specific page inside a pdf file?  Please tell me how.
 
Wayne
 

Paul_J_Miller

2018/01/28 06:40

In reply to by WayneK

[quote=WayneK]
You can link to a specific page inside a pdf file?  Please tell me how.
 
Wayne
 
[/quote]
 
You can open a specific page in a PDF file by appending a command line parameter to be handed to the PDF reader but unfortunately the format of that parameter is different for different readers. I haven't yet tried this in InfoQube so it might not be possible for InfoQube to append parameters to the link.
 
For instance if you have Acrobat reader installed then :-
 
"C:\mypath\myfile.pdf $P 133
 
Would open 'myfile.pdf' on page 133
 
The solution adopted in ConnectedText is to allow the user to append whatever characters they like to the link and that just gets passed to the reader so the user tailors the link to be compatible with their own reader.  If the user changes their PDF reader then they have to go through the file editing all the links.
 
Linking to a specific page is possible but not perfect.
 

WayneK

2018/01/28 10:48

In reply to by Paul_J_Miller

Thanks for the info.  I tried your method in InfoQube but couldn't get it to work even with Acrobat set as the default reader.  Let me know if you come up with something that works in InfoQube.
 
Pierre seemed to be saying that you can already do this in InfoQube somehow
 
Wayne
 

Paul_J_Miller

2018/02/04 05:09

In reply to by Paul_J_Miller

[quote=Paul_J_Miller]
For instance if you have Acrobat reader installed then :-
 
"C:\mypath\myfile.pdf $P 133
 
Would open 'myfile.pdf' on page 133
 
[/quote]
 
Sorry I gave out the wrong information here, the $P parameter is for one of the other PDF readers (I have several installed).
 
For Adobe Acrobat the line should read :-
 
"C:\mypath\myfile.pdf page=133
 to open the PDF file on page 133.
 
Sorry for misleading you.
 
 

WayneK

2018/02/04 12:11

In reply to by Paul_J_Miller

Still couldn't get it to work in InfoQube, Ecco Pro, or Onenote.  Didn't try any programs beyond that
 
Pierre never answered my question but I'm going to presume it can't be done in InfoQube.  The best that can be done, as far as I know, is to set up a two-step link system:
 
1) Link to pdf from InfoQube
2) Inside pdf, set bookmark for destination
  
Wayne
 

Pierre_Admin

2018/02/04 12:35

In reply to by WayneK

[quote=WayneK]
Pierre never answered my question but I'm going to presume it can't be done in InfoQube.  The best that can be done, as far as I know, is to set up a two-step link system:
[/quote]
No quite, I was busy with other issues (v107). Universal links et al, will be in v108
 
 
Pierre_Admin
IQ Designer
 

WayneK

2018/02/04 18:56

In reply to by Pierre_Admin

Thanks, Pierre.  Great news.
 
Wayne
 

Paul_J_Miller

2018/02/05 13:37

In reply to by WayneK

[quote=WayneK]
Still couldn't get it to work in InfoQube, Ecco Pro, or Onenote.  Didn't try any programs beyond that
 
Pierre never answered my question but I'm going to presume it can't be done in InfoQube.  The best that can be done, as far as I know, is to set up a two-step link system:
 
1) Link to pdf from InfoQube
2) Inside pdf, set bookmark for destination
  
Wayne
 
[/quote]
 
Being able to use Universal Links and passing parameters to applications are two different things.  If Pierre implements Universal Links it will not help being able to open a PDF file at a specific page.  But if the link to a file were able to pass the rest of the string in the link to the application which opens the file then that would help, I think.
 

Pierre_Admin

2018/02/13 15:38

In reply to by Paul_J_Miller

Hi Paul,
 
I can now link to a PDF file and open the default viewer
I was not however able to link to a specific page. Can you confirm the exact syntax and using which program ? 
 
Thanks
 
Pierre_Admin
IQ Designer
 

Paul_J_Miller

2018/02/14 04:58

In reply to by Pierre_Admin

[quote=Pierre_Admin]
Hi Paul,
 
I can now link to a PDF file and open the default viewer
I was not however able to link to a specific page. Can you confirm the exact syntax and using which program ? 
 
Thanks
 
Pierre_Admin
IQ Designer
 
[/quote]
 
I think we have conflated two different issues here, passing command line parameters to a program which is the target of a link and using universal links are two different methods and both have advantages and disadvantages.
 
The parameters needed for opening a PDF on a specific page are different for different readers.  The parameters for the Adobe reader are www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/pdf_open_parameters.pdf
 
A universal link is usually generated by the target application and pasted into the initiating application.  None of the PDF readers I know of can generate universal links to their content but all of them can take command line parameters to open a PDF on a specific page.
 
Universal links are very useful.
 
Passing command line parameters to applications which are the target of a link would also be useful but not as useful as it might first appear.  Take the example of reading a PDF and linking to the specific page you have read to, if you read a bit further then you will have to go into InfoQube and edit the command line parameter to point to the new page.  This could become tiresome and easily forgotten.  But they are great for static references.
 
What it would take for the passing of command line parameters is for the entire string in the hypertext link to be passed to the target application, then the user could append whatever characters they thought were appropriate to the link which would then be passed to the application as its command line.
 
Don't try to overthink this it doesn't need to be complicated or automatic for any one application, just passing the strings will be sufficient because the user can then customise the string to be appropriate for the particular set of applications they have installed on their system.
 
Hope this helps.
 

How about this:
  • InfoQube://d:\SomeIQBase.sndb
    • /items/ItemID
    • /views/Surface
    • /views/Calendar
    • /views/ViewName
    • /views/ViewID
 
Pierre_Admin
IQ Designer
 

Paul_J_Miller

2018/01/29 02:43

In reply to by Pierre_Admin

Looks OK but the real issue here is how the user will interact with it.
 
I would suggest an option to 'Copy a link to this Item' or 'Copy a link to this View' etc.
 
The link is then copied to the clipboard and then pasted into another application.
 
The other aspect is making the InfoQube hypertext link mechanism compatible with universal links from other applications, in fact I would say this is the more important aspect.  Linking to content in many applications from a central organising program.
 
The users generally aren't interested in what is going on behind the scenes.  Better a clunky mechanism which is slick to use than a slick mechanism which is clunky to use.
 

Armando

2018/01/29 15:34

In reply to by Paul_J_Miller

[quote=Paul_J_Miller]
I would suggest an option to 'Copy a link to this Item' or 'Copy a link to this View' etc. 
[/quote]
 
I'd favor that too.

[quote=Paul_J_Miller]
I think we have conflated two different issues here, passing command line parameters to a program which is the target of a link and using universal links are two different methods and both have advantages and disadvantages.
 
The parameters needed for opening a PDF on a specific page are different for different readers.  The parameters for the Adobe reader are www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/pdf_open_parameters.pdf
 
A universal link is usually generated by the target application and pasted into the initiating application.  None of the PDF readers I know of can generate universal links to their content but all of them can take command line parameters to open a PDF on a specific page.
 
Universal links are very useful.
 
Passing command line parameters to applications which are the target of a link would also be useful but not as useful as it might first appear.  Take the example of reading a PDF and linking to the specific page you have read to, if you read a bit further then you will have to go into InfoQube and edit the command line parameter to point to the new page.  This could become tiresome and easily forgotten.  But they are great for static references.
 
What it would take for the passing of command line parameters is for the entire string in the hypertext link to be passed to the target application, then the user could append whatever characters they thought were appropriate to the link which would then be passed to the application as its command line.
 
Don't try to overthink this it doesn't need to be complicated or automatic for any one application, just passing the strings will be sufficient because the user can then customise the string to be appropriate for the particular set of applications they have installed on their system.
[/quote]
Hi Paul,
 
I probably wasn't clear that I perfectly understand that we have separate issues/features here. I can actually count 4:
  1. IQ must handle universal links from other apps, that is URI protocols, see https://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml
    (AFAICT, the only protocol other than http (et al) currently handled is Outlook)
  2. IQ protocol has at least 4 sub-tasks:
    • Registry update file to register the IQ:// protocol
    • Code change to copy IQ://XYZ shortcuts to the clipboard
    • Respond to the link and locate the correct file and file element (item, view, etc)
    • Support IQ:// links inside IQ
  3. Better support for file links inside IQ
  4. Support file link parameters (i.e. to show a specific page)
I'm working on all of these and most should be in v108. For example, for item 3:
  • New: Hyperlink dialog: Can now copy / paste a file from Explorer
HTH !
 
 
Pierre_Admin
IQ Designer
 

Hi Paul,
 
v108Pre1 is now online with full support for universal links. To register the IQ:// protocol, run the file IQURIProtocolInstall.exe
 
File links are also improved but there is still a bit of work to do.
 
HTH !
 
Pierre_Admin
IQ Designer
 

Paul_J_Miller

2018/02/18 07:03

In reply to by Pierre_Admin

[quote=Pierre_Admin]
Hi Paul,
 
v108Pre1 is now online with full support for universal links. To register the IQ:// protocol, run the file IQURIProtocolInstall.exe
 
File links are also improved but there is still a bit of work to do.
 
HTH !
 
Pierre_Admin
IQ Designer
 
[/quote]
 
The links to other applications from within IQ work.
 
The links into IQ from other applications don't seem to work, most applications just don't seem to do anything.  Microsoft OneNote brought up a dialog box saying that an unexpected error had occured.  None of the applications I tried either opened IQ or switched to it if it was already open.
 
Yes I did run the file IQURIProtocolInstall.exe before trying this out, then re-started the computer.
 
But this is progress

Armando

2018/02/18 09:03

In reply to by Paul_J_Miller

[quote=Paul_J_Miller]
[quote=Pierre_Admin]
Hi Paul,
 
v108Pre1 is now online with full support for universal links. To register the IQ:// protocol, run the file IQURIProtocolInstall.exe
 
File links are also improved but there is still a bit of work to do.
 
HTH !
 
Pierre_Admin
IQ Designer
 
[/quote]
 
The links to other applications from within IQ work.
 
The links into IQ from other applications don't seem to work, most applications just don't seem to do anything.  Microsoft OneNote brought up a dialog box saying that an unexpected error had occured.  None of the applications I tried either opened IQ or switched to it if it was already open.
 
Yes I did run the file IQURIProtocolInstall.exe before trying this out, then re-started the computer.
 
But this is progress
[/quote]
 
It works here.
Did you redownload the program? there was a bug in the protocol installer. The first version didn't write the registry properly.

Pierre_Admin

2018/02/18 09:39

In reply to by Paul_J_Miller

Hi Paul,
 
You're using the portable or installable version ?
 
Pierre_Admin
IQ Designer
 

Paul_J_Miller

2018/02/18 13:19

In reply to by Pierre_Admin

[quote=Pierre_Admin]
Hi Paul,
 
You're using the portable or installable version ?
 
Pierre_Admin
IQ Designer
 
[/quote]
 
I downloaded version 109 soon after it appeared on the website.
 
I am using the Installable version.
 
I checked and it still didn't work, then I downloaded it again (at 6:05 pm local UK time) and re-installed it and checked the links into IQ, this time they worked as expected.
 
Thank you.
 

Pierre_Admin

2018/02/18 13:24

In reply to by Paul_J_Miller

Hi Paul,
 
This is wonderful news. I'll integrate the IQ:// protocol with the main program installer in a future version.
 
Thanks for bringing up this feature. It was asked a long time ago, and your request made it happen
 
Pierre_Admin
IQ Designer
 

Hi  Paul,
 
Is the new universal link feature (to and from IQ) working the way you expected ?
Any improvements to be made ?
 
Pierre_Admin
IQ Designer
 

Cyganet

2020/06/05 11:49

In reply to by Pierre_Admin

Hi Pierre,

I was using URI links today, and got a few things that suprised me:

1. I didn't realise that the portable version didn't work with URI links, and I've been using it instead of the installed version as that was the recommendation. I did a forum search to find out about IQURIProtocolInstall.exe. Can you please add one line in the main downloads page saying that the portable version needs to be registered to as the program open .sndb files in windows and run IQURIProtocolInstall.exe to work with URI links? The information is buried somewhere in the manual where most people won't find it. Maybe if we want to use URI linkswe're simply better off with the installed version?

2. I ran IQURIProtocollInstall.exe, and when I clicked on a URI link from within InfoQube, I got a popup and had to switch the program handler from InfoQubeClipper.exe to InfoQube.exe to open the link to an existing item in another IQbase. Am I misunderstanding how this works? Why would the link be handled by the clipper instead of the main program? Once I made the switch (only once) the correct IQbase is opened at the correct item.

3. Using a URI link from another program (i.e. not InfoQube) leads to a Firefox (my default browser) page being opened, then the IQBase after a short delay. However, it will not move the view to point at the correct item in the correct grid.

Thank you,

Cyganet