kf2
New Member
Posts: 18
|
Post by kf2 on Jan 4, 2006 7:02:47 GMT -5
As I get ready to reorganize much of the data on my harddrive I'm wondering what your plans are as far as hyperlinking: will the addresses be relative or absolute? I have a bunch of links in Keynote... and after changing my folder structure I will have to change them all.
Kevin
|
|
|
Post by patris on Jan 4, 2006 18:16:43 GMT -5
Yes, I agree! Links to local File (open applications and files (excel,word, etc) patris
|
|
|
Post by Tim Penrose on Jan 27, 2006 10:57:17 GMT -5
Links to local files does present a problem because Windows does not offer a journaling file system. This is one reason why I pull custom tree icons into the database.
To be honest, I hadn't yet considered the possibility of creating a hyperlink to an external file on the local system. Earlier this week I was implementing the hyperlink mechanism and was discouraged to find that Microsoft's RichTextBox hard codes the protocols. What this means is that I'm stuck using one of the predefined protocols, such as HTTP, HTTPS, FTP, (or, now that I think about it, FILE). I wanted to create a new protocol to represent a reference to another node, such as NODE://MYPARENT.MYNODE, etc. I plan to look at implementing syntax highlighting inside a RichTextBox within the next few days to see if I can implement it myself.
As far as FILE hyperlinks, this is an easy thing to implement. But I must think hard about whether I want to implement it to allow BOTH relative and absolute filenames, or not. The concern is that a repository is intended to work flawlessly across multiple machines. One of my design strategies is to allow an individual’s repository to easily scale and integrate into an enterprise repository. I think the only way I can ensure this would be to pull the file into the repository itself or an application-managed directory, so that it can be served to any machine which has access to the repository, and then keep track of its metrics (file size and modification time) to update the managed version when it finds a newer version, with optional user prompt for update.
|
|
kf2
New Member
Posts: 18
|
Post by kf2 on Jan 27, 2006 12:41:57 GMT -5
Does this mean that "Novo" would copy the file and put it somewhere it knows? This is unfortunate. I understand the scalability issue (somewhat) but somehow "bringing the file into" Novo makes the whole process of adding information rather clunky. If I bring in a doc, then make changes to it outside of Novo I have to update it in Novo too! Ack! At the very least you get substantial harddisk bloat.
What if you made a more intelligent "hyperlink" front end. This front-end would check links to see if they are valid and give the user quick access to a disk search. It would also provide functions for rapidly updating all links in a given Novo file that may have changed. If a user moves a folder, the first time he clicks a link in Novo for a file in that folder he is given a browse dialog. He finds the file, then Novo tries to update all files that used to be in that folder automatically. If they exist, they are updated. If not, they are left alone.
One other quick feature request is hyperlinks as nodes. This is huge! But, it requires working out the link theory of the program first!
Kevin
|
|
|
Post by Tim Penrose on Jan 31, 2006 15:13:17 GMT -5
Does this mean that "Novo" would copy the file and put it somewhere it knows? This is unfortunate. I understand the scalability issue (somewhat) but somehow "bringing the file into" Novo makes the whole process of adding information rather clunky. If I bring in a doc, then make changes to it outside of Novo I have to update it in Novo too! Ack! At the very least you get substantial harddisk bloat. This is my dilemma! Imagine a user with multiple computers, each in a different location. I want this user to be able to set up a common repository, on a server, that he/she could access and use identically on each computer. Ok…. I’m thinking this through… There are a ton of cases to consider; Local Create Link, Remote Create Link, Local Access of Locally Created Link, Local Access of Remotely Created Link, Remote Access of Locally Created Link, and Remote Access of Remotely Created Link. Got it… There is a repository-level checkbox: [ ] Allow global file management. Then, whenever a file link is created, there is a link-incident-specific checkbox: [ ] Allow global access. If "Allow global access" is not checked, then the link is a simple pointer to a local file. If it IS checked, then the file gets copied to the server. The “Allow global access“ checkbox would be disabled if the “Allow global file management” option is not checked. The context-sensitive help will inform users of the tradeoffs of their choices. There will be an option to enable/disable all file links, in case someone wants to migrate their repository to/from a client/server environment. Edit: ooo! and one more thing... There needs to be a repository setting that specifies the default "Allow Global Access" setting, so users don't have to think about it every time they create a file link. Does this work? One little elaboration; you wouldn't have to update Novo if the managed file came from the local machine. An internally managed file knows where it came from, so it can simply validate itself whenever it is being accessed from the same machine as the link was created from. Yes, I'm aware that would completely defeat the purpose of managing the files if all access is local.... What if you made a more intelligent "hyperlink" front end. This front-end would check links to see if they are valid and give the user quick access to a disk search. It would also provide functions for rapidly updating all links in a given Novo file that may have changed. If a user moves a folder, the first time he clicks a link in Novo for a file in that folder he is given a browse dialog. He finds the file, then Novo tries to update all files that used to be in that folder automatically. If they exist, they are updated. If not, they are left alone. This feature has to exist no matter what. I loathe that there is no GUID associated with a file, so that the user must be participate in reconnecting broken links. One other quick feature request is hyperlinks as nodes. This is huge! But, it requires working out the link theory of the program first! My design was pre-meditated to allow this. So yes! Tim
|
|
kf2
New Member
Posts: 18
|
Post by kf2 on Feb 1, 2006 6:44:02 GMT -5
Yes, that sounds fine to me. There may be some files you want to be "Novo" centric even as a single user. Actually, I was going to suggest this idea if we kept up the discussion, but seems you arrived there already!
Could you explain your elaboration? I think I know what you mean... but I dont know I know what you mean!
Yeah, the smart or auto repairing of hyperlinks is something someone should have looked at before. There will have to be some amount of user intervention (there are just too many cases to care for) but even then, it could be made a lot easier.
Regarding Apple again: my dad and brother are Apple fans. From the times I've used it, I dont really like it, but I can see where different OSs gives users choice and inspires more creativity. Not a bad thing all around!
Kevin
|
|