Open Source Alternative to Dreamweaver's .LBI?
An anonymous reader asks: "I have recently started using Dreamweaver to manage one of many websites that I work on. One feature that I am growing to love is the ability to use Dreamweaver library files (.LBI). What are Slashdot readers' opinions on this format? Is there something better (read: free and standards-compliant)? I also would like to find something I could use on an open-source platform so that I won't be locked in to using Dreamweaver. What do you use for your sites?"
I have a tool for each part of the process. For design, I use FrontPage, for development AND design, I use Dreamweaver. For straight-up development, I use PHPEdit. Just use the right tool for the right job.
More than enough BS
I use 3 things to make websites. Well, technically four, but really 3. First I use nedit. It's a text editor, my text editor of choice. Any text editor will do. Second I use nvu. nvu is like Mozilla Composer, but it has been "Firefoxized". Third I use firefox itself, to view the pages. The technical fourth thing is a firefox extension that lest me edit css live to make sure its perfect. Any real self respecting geek writes the html and css in the raw. It's the only way.
The GeekNights podcast is going strong. Listen!
Maybe we could tell you about alternatives if you'd detail exactly what it is that LBI files do. Saying that it's a library file doesn't mean much. Does that mean it's a DLL? What exactly is the problem that you are trying to solve?
Prevent email address forgery. Publish SPF records for y
Just use SSI if your web server supports it (most do). No need to "update all pages" like you do with LBI.
VIM for life, syntax coloring makes everything easy enough for anyone who can do some scripting... GOD SAVE VIM.
Karma: Good, or bust!
The LIB format isn't really proprietary. In short, it's your HTML page with a different file extension and a few additional HTML comment blocks. The only reason it's .lib is so you don't treat it as a HTML page since it's not a complete HTML page.
The LIB file is text that's copy and pasted into the parent document. That is, if you were to delete the LIB file, you still have all the code in the parent files. What Dreamweaver does with the LIB files is recognize that any code changed within the LIB file must be changed in the parent files that use that code. However, this is the Dreamweaver executable that's detecting and making the changes. This isn't a server technology. This isn't anything special in the files (outside of standard HTML comment blocks), just how your copy of Dreamweaver is using a form of find/replace function on your site.
As to open-source alternatives, you may have read previously about OSS lack of usability. This is why there aren't many good OSS editors out there. Oh there are editors, but they are mostly glorified text editors and some will display HTML pages with a WYSIWYG interface. But what makes Dreamweaver special are the advanced find/replace functions like LIB files. To my knowledge, nothing in OSS offers any where close to this functionality. You can code a site, even dynamic sites, with just a text editor and a FTP client. However, tools like Dreamweaver add functionality that makes the development process easier. You can make templates in text edit. But when you make a change to the template, text edit won't make the changes to the 200 other files that refer to that template. Dreamweaver will.
I use Dreamweaver (with the GPL extention PHAkt) because it gets my job done faster. If a tool came out that was better or even comparable to Dreamweaver, I'd go for it. But, alas, there is no such a tool.
AnamanFan - Trying to find the Truth, one post at a time.
Real websites use frameworks and CMS, and only use toys like dreamweaver for playing "what if".
I'm not sure exactly what Dreamweaver library files are (you might want to explain that in your article next time, hint hint), but I'm assuming they are used to make templates and dynamic content. In that case, do not use proprietary tools; use either SSI or a scripting language (go PHP!).
Here are the tools I use for web design:
Source editing: Crimson Editor, a freely available text editor that supports syntax coloring and just about anything you'd ever want in a text editor. Somewhat well-designed GUI and very small (fits on a floppy).
PHP editing: Crimson Editor (listed above), and Zend for larger projects
Page design: Photoshop/Imageready and (for more content-oriented pages) Illustrator
HTML Editing: Adobe Golive CS. I know I'm sounding like an Adobe fanboy here, but GoLive really kicks ass. It has a steep learning curve, in that it's slightly harder to pick up than Dreamweaver, but after spending a few hours with it, you'll love it. Free trial available, I believe.
Of course, this is all proprietary software, and that's how things are in the design world. With development, you have a little freedom, but with design, you're locked into the Big Four (Adobe/Macromedia/Corel/Quark) and the last two are on its last legs.
If I understand what LBI files are, it is some kind of HTML code that is in several HTML pages, and makes your HTML code change everywhere when you change that LBI files? I wouldn't call this efficient.
XSLT/XML/CSS all the way man. *There* lies the real power. http://www.w3c.org is the real source for webpage edition.
perception is reality
I feel sorry for your websites...and your clients, if you still have any.
Makefiles would appear to be part of the solution. Combine that with CVS, CMS, and frameworks, and one can do a great deal. Linux specifically, and OSS in general does thing DIFFERENTLY, not necessarily better or worse, just different. Maybe what we need is more transition documents showing how one would do something in an open source way, as compared to the closed source way. That would go a long way towards dispelling these "OSS is inferior" posts we see all over Slashdot.
one of the premier OSS html editors:
http://quanta.sourceforge.net/
In fact, the proper way to do templates is xslt/css, maybe with some xincludes, and so on. And in fact, I am already prepared for the ideal world where all those standards are supported by most browsers, so that the change doesn't have to propegate through files at all.
I use a text editor and raw xml, because I want my documents to last forever with minimal maintenance. Dreamweaver will not last forever. Long after ASCII itself has fallen to UTF-8, my documents will stand, with the active support of only one individual -- ME. If the LIB file is easy to write scripts for without the use of Dreamweaver, I might consider it, and then reject it, because browsers do not support Dreamweaver -- but they do support xslt.
As far as speed and ease, what's really needed is a good xml editor. I haven't tried any proprietary ones, and there aren't any good free ones. What'd really be nice is some sort of tab-completion for xml elements, based on elements that already exist in the same document, or on some common library based on what it's learned from watching you.
Don't thank God, thank a doctor!
To be totally honest- I try to use vi whenever i can. reasons:
:)
- If you code something in a dreamweaver like app, it tends to add other junk to the code - like ^M at the end of every line, and also messes up any spacing you had.
- The ability to use some of the mapping in vi allows you to make changes to the html much faster (even the use of the . command has made coding groups of things much much quicker than copy and paste, in my opinion)
At first...VI sucked. Now I really dont want to do any programming / html without it. (commands, macros, regex, oh my!!)
Happy html'ing.
I'm in the middle of a two week project to add template-based management to our intranet site.
.html extension). A make file parses the index and auto-adds the targets for update, then calls the perl script to build each html file from an appropriate template and aforementioned data file (drop .html, add .data to extension).
How it works is I use perl and HTML::Template. I use CSS and section-descriptive markings for style, and in the template I just use identifiers that sound like the classes I'm enclosing within them.
Then, to fill in a page you create a data file called "whatever.data" and use a plain jain text editor or HTML editor (since inline HTML is fine). You delineate the sections using a notation that looks like RedHat spec files, and just fill in the ones that actually exist (body, header, footer, etc.) You can set flags in the datafile too (omit sidebar, omit footer instead of default, etc.).
Then you add the data file to a directory index with a description (but instead you use the
It seems to work (although the system is not flexible enough to be deployed outside this site just yet, need to take care of a few hardcoded things, and make the makefile smarter).
Fuck dreamweaver. If I want a new layout, I just redesign the template in (insert foo tool) or adapt one from the web. Replace the template file with the new one, add the content markers where I want them, and just re-run make.
/ME pictures the typical geek doing this, then hurriedly exits stage left... whimpering...
Got time? Spend some of it coding or testing
This solution works best on design-led, rather than code-led projects; ie websites not webapps, since you'll have to change and prototype the UI more, which is where DW is strong.
Unfortunately I can't at present open source my work, but here's some technical details:
It works pretty well, and its acceptably fast (when I originally wrote it on an 800MHz laptop, pages with 5 lbi includes were served in about 0.2s if they needed to be reparsed, 0.025s from the cache; for JSPs with 'tiles' tags the figures were 12s and 0.02s. ie, you don't lose much speed if you use the cache, and the first view time - important in sales demos - was much quicker than JSP. NB other template engines that don't involve the compiler are similarly fast, eg Velocity. I didn't have to work particularly hard on optimizing it as it very quickly dropped below the level where DB access and network lag dominated again.
In terms of effort, it took one developer (me) about a week over it for the first delivery for DW4; the javascripty bits and changes to the parser after DWMX came out took about 2 more.
Again, its horses for courses. For web
Plenty good enough to get started with, WYSIWYG and all. Produces much nicer HTML if started in HTML mode rather than writer mode, but even so in writer mode, it's chalk-and-cheese better than the abominations MS-Word spits out.
My own website, while hardly a paragon of usability or graphic design, is mostly built on OOW-edited HTML that's been fed to a gawk script which rips off the head and tail, replacing them with PHP calls to generic top-and-tail scripts which do the preamble, headings, menu, links-here, translation form (thanks Google) etc.
This makes consistency much easier, it's quick to edit stuff up (I use Linux, but that remains true even on MS Windows) and massaging MS-Word docs and the like to suit (precious few of those on my site but I do this elsewhere too) is fairly straightforward, although I usually have sed discuss some of the resulting HTML's shortcomings up close and personal before feeding it to the top-and-tailer. You'll notice that all of the W3C buttons work.
If I've just got to add an item to a menu or whatever, simple little tasks, it's vim all the way, and of course for a larger, more complex site I'd take a completely different approach.
Got time? Spend some of it coding or testing
Leo @ Sourceforge
It's mature, actively developed, cross platform, and quite useful when working with languages that don't have the concept of a subroutine, like XML/HTML, XSL, SQL.
fish://yourname@yourserver/path/to/website (or ftp://yourname@yourserver/path/to/website) plus drag and drop. Fabulous! The MS Windows version ain't as smooth or up to date, but it is a great deal safer than IE. (-:
For images, GIMP 2 doesn't have an image-chopper-upper by default, and while there are plugins to do that, I often prefer to do it (with GIMP, set some guides and then crop to that; you can make some sections of an image JPEG and others PNG (or omit them and replace that piece with flat colour) to suit the content) "by hand". It does have all manner of other nice features, more than enough to keep the average punter occupied for weeks.
To test things with IE 'coz "everyone" uses it, I could maybe-illegally run it under WINE (someone's even done an RPM, but I can't be bothered finding it) but as it turns out, I have a friend with a Windows2003 box exposed to the internet, so I aim rdesktop at that when I want IE-testing.
Got time? Spend some of it coding or testing
Anyone who uses Dreamweaver for any serious work is off their freaking rocker. I can't imagine for the life of me why anyone would use those tools. It's not just code bloat that makes them so awful but the simple fact that it keeps you ignorant! Do you think the really really interesting and well-designed websites used Dreamweaver for anythign other than project management? You have to get dirty if you want to learn how to code anythign on the web. There are so many undocumented or undervalued tricks to be discovered! But you'll never discover them because Dreamweaver, Frontpage, etc. are made to do one thing: make your website fit within the confines of that program. If Dreamweaver can't do it, you can't do it. That's kind of sad.
:) Extensible, syntax highlighting, project management, open source, free, CVS repository browsing and control, internal PHP processor, internal Perl RegEx engine, Apache control, [insert your need here]
As for what I use (yes I am a professional for almost ten years now).....
Eclipse Eclipse Eclipse Eclipse Eclipse Eclipse
Have I made my point yet?
Eclipse is an unbelievable tool that I have been using for about a year now and I keep finding new ways for it to help me do my job better.
You can go to Eclipse.org to pick up a copy. I highly recommend getting v3.0 M8
I used Dreamweaver for a long time, as it was convenient and relatively easy (and the library and template features were nice).
Unfortunately, the problem is that, as others have noted here, using such corporate comforts protects you from doing things the right way.
I think what you should be thinking about is a content management system, wherein your content is easily editable (live and online) and the system makes you work with templates in the right way (i.e., using CSS). For my current job, I wound up rolling my own CMS, using PHP for the front end and to generate HTML, and MySQL to keep track of templates. For a live content editor, I'm using Ephox, which is a great product but costs a pretty penny. I started out with Spaw, but it doesn't generate XHTML and can only be used in IE.
There are a ton of CMSs out there -- I just found that most of them were overkill for my website. (And the open source ones generally use IE-centric products for live content editing.) Just go to sourceforge and search for "CMS". Mambo is one of the better ones I've seen.
Oh, and I second the nomination of Crimson Editor as a good programmer's text editor. (Free, as in beer.) For CSS, I use Top Style (not free, but excellent).
try WebGUI from plainblack. While in some places it is still rough around the edges, it is very flexible and has a nice core feature set. I consider it the "mysql" of CMS. Just the right functionality. OSS at no additional charge ;).
It is written in Perl, is modular, and completely templatized. There is not much you can't do with it out-of-box with a little imagination.
Its only real down sides are limited e-commerce support, and it can be difficult to setup initially. For the faint-of-heart, they offer hosted CMS using WebGUI for $35.00 per month (shell account included).
The documentation requires a fairly broad background to put all the pieces together... but it does have a book and online help. It's default setup could use some improvement to really demonstrate the power of the software.
No. I don't work for them. Just a fan/contributor. What drew me to it was the ease of use, architecture, and the decent support for per-page SEO (IE ability to specify metatags on per page basis).
hmm. i've been recommending dreamweaver to everyone who's been thinking of using frontpage, but frankly, i still can't figure out how to fit it into my workflow. i use photoshop for all my graphics and output an initial html from it, and then i use vim on it to handcode the stuff that needs to be handcoded and make a template out of it should i need it as a template. stuff like fireworks still puzzle me, really.
(ah my designer-student-friend was trying to tell me how programmers can't see things their way, but sigh... mayhaps only those who hand-code can understand why hand-coding is the only true way haha)
Dreamweaver's lbi and template functions are a nightmare down the road when someone wants to edit the page. What you really want is includes. Everywhere you would use lbi, use an include instead.
And you can skip the stupid DWT templates by creating a good, solid xhtml framework for your pages, use css to pretty 'em up, and pull the content in through includes. It's modular, scalable and easily revised. Just reuse your framework.
Dreamweaver is OK (although no better than OK), but those libraries are way more trouble than they're worth.
Anyone looking for the one of the best editors ever better check out Eclipse. Any feature you might need can easily be found as a plugin. If WYSIWYG is your thing, there are even plugins under development for that. I highly recommend Eclipse Colorer...excellent syntax highlighting for almost ANY code type...even PHP, CSS, javascript and HTML in the same document! Look it up. Then use it.
You have no idea about web design, development or even 'straight-up'.
Design should be done on paper, you do not design html, you forge xhtml on the fly to suite you very requirement for any design you wish. Dreamweaver is a plausible tool, which is only used for syntax highlighting, tag completion, attribute completion and a concept of a website with a root and an image directory.
Don't even utter the F word in this place again.
Give me an eclipse plugin that doesn't slow eclipse down that does this, and you have got yourself someone who will pay 25 bucks, and probably 5k other people who will pay 25 bucks.
Any Windows app worth its salt allows you to choose how to end lines. Adding ^M to the end of line is something a lot of Windows programs do, but Dreamweaver lets you disable it...
Go to Preferences-->Code Format-->Line Breaks. Choose Unix (or Mac OS, or Windows).