<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>On Feb 21, 2010, at 2:53 PM, Gerrit Glabbart wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><br><br><div class="gmail_quote">2010/2/21 David Messerschmitt <span dir="ltr"><<a href="mailto:messer@eecs.berkeley.edu">messer@eecs.berkeley.edu</a>></span></div><div class="gmail_quote"><span dir="ltr"></span><br> <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div style="word-wrap:break-word">Good point, but there is absolutely nothing inconsistent between (a) accommodating naive and power users differently and (b) allowing users to move from the naive to the power category. All you are saying is that naive users should not matter, because they dont stay that way. Such a perspective is commonplace in open source software, but I am arguing that naive users are important. For one thing, accommodating them will attract more new users to TexShop, whether or not they later turn into power users. I would argue that this is good, if we wish to maximize the impact of TexShop.<div> <br></div><div>-dave</div><div></div></div></blockquote></div><br><div>And doesn't OS X provide a mechanism for this? Default macros, engines, etc. could go into /Library/Application Support/TeXShop/ and could easily be upgraded automatically; the current directory in ~/Library/TeXShop would be the user's responsibility, should they see the need. This is the way it is handled for AppleScripts, PreferencePanes, Screen Savers -- all sorts of things really.</div> <div><br></div><div>Or am I missing the point?</div></blockquote><div><br></div>No, you're not missing the larger point at all; but for reasons unknown to me, TeXShop deviates from the prescribed Apple model by completely blurring the distinction between "Application" and "User" with respect to many kinds of functionality, primarily Macros and Engines, but also command completion etc. Because TeXShop allows us to change almost anything (good for power users) it copies all the macros, scripts, engines etc. into ~/Library/TeXShop from the application package itself. There is no /Library/Application Support/TeXShop folder.</div><div><br></div><div>This has the result of being very non-transparent for most users, and has the unfortunate effect that new functionality in the form of macros, scripts or engines doesn't automatically show up when TeXShop is updated. Of course, as the power users point out, they don't want upgrades messing with all their tweaking. (I would generally consider myself a power user, but it took me quite a while to even realise that new functionality of this sort never showed up with TeXShop update; the default assumption would be that it *would* show up.)</div><div><br></div><div>Dick has proposed a solution, and this discussion is about its merits; I agree with you that sticking to the prescribed Apple method would make things more transparent for all users. There are two problems with it as things stand now, though. First, many established users have much invested in modified engines and macros and don't want this messed with. Second, (and I think this is more fundamental, but probably solvable) there isn't a clear delineation between functionality that should be not modifiable by the user versus that which is.) If we could reach some sort of consensus on this distinction, having new functionality show up automatically would be more possible. </div><div><br></div><div>This is more or less what Dave Messerschmitt is proposing, and I agree with the basic sentiment (references to Einstein notwithstanding). </div><div><br></div><div>While it's easy to take a particular solution that works, I think it's worthwhile to think of better solutions altogether and then decide whether the implementation of them is too difficult. Having written a lot of code myself (although not much recently), I'm keenly aware of the programmer's bias towards solutions that are easy to program but end up like "Here's a fork, now go eat your soup". This is also what Dave is worried about w.r.t. open source software generally.</div><div><br></div><div>Alan</div><div><br></div><div>P.S. Could those of you replying to things in this thread please not top-post. It really does make following the conversation harder. (Top posting is adding your comments on top of all the quoted material, rather than adding them in the appropriate parts of the commented material.) Thanks.</div><div><span class="Apple-style-span" style="font-family: Helvetica; ">-- </span></div><div apple-content-edited="true"><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: 'Lucida Grande'; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Alan Munn</div><div><a href="mailto:amunn@gmx.com">amunn@gmx.com</a></div><div><br></div></div></span><br class="Apple-interchange-newline"></div></span><br class="Apple-interchange-newline"> </div><br></body></html>