{"id":723,"date":"2009-11-06T01:00:35","date_gmt":"2009-11-05T23:00:35","guid":{"rendered":"http:\/\/www.chipwreck.de\/blog\/?page_id=723"},"modified":"2022-01-07T02:25:45","modified_gmt":"2022-01-07T01:25:45","slug":"coda-php","status":"publish","type":"page","link":"https:\/\/www.chipwreck.de\/blog\/software\/coda-php\/","title":{"rendered":"Coda PHP &#038; Web Toolkit"},"content":{"rendered":"\n<div class=\"contentnavi\">\n<ol class=\"contentnav1 center\">\n<li><span class=\"pink\">Download \/ Feedback \u2022<\/span><\/li>\n<li><a href=\"\/blog\/software\/coda-php\/help\">Help<\/a> \u2022<\/li>\n<li><a href=\"\/blog\/software\/coda-php\/coda-tips\">Coda Tips<\/a><\/li>\n<\/ol>\n<p class=\"contentnav2 center\"><a href=\"#overview\">About<\/a> \u2022 <a href=\"#download\">Download<\/a> \u2022 <a href=\"#comments\">Comments\/Feedback<\/a><\/p>\n<\/div>\n\n\n\n<h2 class=\"desc wp-block-heading\" id=\"overview\">A Coda plugin aimed at PHP &amp; Web development &#8211; <strong>not in active development<\/strong>.<\/h2>\n\n\n\n<p>Current version: <strong>4.1<\/strong> &#8211; Coda 1 and Coda 2<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Features<\/h2>\n\n\n\n<div class=\"features\">\n<ol class=\"features\">\n<li>(Automatic) PHP syntax validation with <q>jump to error<\/q> and auto-save<\/li>\n<li>Clean up\/reformat HTML, CSS, Javascript and PHP code (configurable)<\/li>\n<li>HTML, CSS and Javascript validation<\/li>\n<li>Minify Javascript and CSS<\/li>\n<li>Automatic check for updates<\/li>\n<li>It&#8217;s free (you can donate of course)<\/li>\n<\/ol>\n<p class=\"nicedk small\">All features use the editor buffer (no need to save first) &#8211; Works with local and remote files &#8211; Written in Cocoa\/ObjC.<\/p>\n<figure><a href=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-general.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-thumbnail wp-image-6542\" title=\"General Preferences\" src=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-general-101x120.png\" alt=\"General Preferences\" width=\"101\" height=\"120\" srcset=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-general-101x120.png 101w, https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-general-252x300.png 252w, https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-general.png 521w\" sizes=\"auto, (max-width: 101px) 100vw, 101px\" \/><\/a><\/figure><figure><a href=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-css.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-thumbnail wp-image-6541\" title=\"Preferences for CSS\" src=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-css-101x120.png\" alt=\"Preferences for CSS\" width=\"101\" height=\"120\" srcset=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-css-101x120.png 101w, https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-css-252x300.png 252w, https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-css.png 521w\" sizes=\"auto, (max-width: 101px) 100vw, 101px\" \/><\/a><\/figure><figure><a href=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-js.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-thumbnail wp-image-6543\" title=\"Preferences for Javascript\" src=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-js-101x120.png\" alt=\"Preferences for Javascript\" width=\"101\" height=\"120\" srcset=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-js-101x120.png 101w, https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-js-252x300.png 252w, https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/prefs-3.1-js.png 521w\" sizes=\"auto, (max-width: 101px) 100vw, 101px\" \/><\/a><\/figure><figure><a href=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/validation-errors-html.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-thumbnail wp-image-6544\" title=\"Validation with errors\" src=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/validation-errors-html-120x80.png\" alt=\"Validation with errors\" width=\"120\" height=\"80\" srcset=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/validation-errors-html-120x80.png 120w, https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/validation-errors-html-300x201.png 300w, https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/validation-errors-html.png 691w\" sizes=\"auto, (max-width: 120px) 100vw, 120px\" \/><\/a><\/figure><figure><a href=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/validation-success-php.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-thumbnail wp-image-6545\" title=\"Validation successful\" src=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/validation-success-php-e1306186360463-120x29.png\" alt=\"Validation successful\" width=\"120\" height=\"29\" srcset=\"https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/validation-success-php-e1306186360463-120x29.png 120w, https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/validation-success-php-e1306186360463-300x72.png 300w, https:\/\/www.chipwreck.de\/blog\/wp-content\/uploads\/2009\/11\/validation-success-php-e1306186360463.png 305w\" sizes=\"auto, (max-width: 120px) 100vw, 120px\" \/><\/a><\/figure><p><br><br><br><br><\/p>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"download\">Download<\/h2>\n\n\n\n<p><a class=\"download imgshadow action\" href=\"http:\/\/www.chipwreck.de\/downloads\/php-codaplugin-4.1.zip\">Download <strong>Coda PHP &amp; Web Toolkit 4.1<\/strong> \u00bb<\/a><\/p>\n\n\n\n<p><a class=\"download imgshadow\" href=\"http:\/\/www.chipwreck.de\/downloads\/php-codaplugin-4.2beta.zip\">Download <strong>Coda PHP &amp; Web Toolkit 4.2 beta<\/strong> \u00bb<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Sourcecode<\/h2>\n\n\n\n<p><a href=\"https:\/\/bitbucket.org\/mariofischer\/php-web-toolkit\/\">https:\/\/bitbucket.org\/mariofischer\/php-web-toolkit\/<\/a><\/p>\n\n\n\n<p class=\"small\"><a>Changelog \u00bb<\/a><\/p>\n\n\n\n<div id=\"cchangelog\" style=\"display: none;\">\n<div class=\"changelog\">\n<h5>4.2<\/h5>\n<p>JSHint 2.3.0 included<br>Removed some legacy options from JSHint configuration<br>Use any JSHint option, there\u2019s a text field in which you can enter JSHint config options. (separated by comma).<br>A list of valid options can be found here: jshint.com\/docs\/options\/<br>Rewritten JSHint-Wrapper (because JSHint works a bit differently now)<br>Removed some legacy JSHint options<\/p>\n<h5>4.1<\/h5>\n<p>Bugfix for a very improbable exception<br>Code update (mostly internal stuff)<br>Dialog layout improved when resized<\/p>\n<h5>4.0<\/h5>\n<p>CSSTidy updated to the current development release. This should now correctly format CSS inside @media-tags.<br>Integrated HTML 5 compatible tidy for validation and reformatting<\/p>\n<h5>3.9<\/h5>\n<p>New: Validate JS on save (Coda 2 only)<br>New: Separate CSS minification included<br>Fix PHP validation on save with selection<br>Laxcomma setting for JSHINT<br>JSMinify updated<\/p>\n<h5>3.8<\/h5>\n<p>Lots of bugfixes<br>Compatibility with other plugins improved<br>JSMinify updated<\/p>\n<h5>3.7<\/h5>\n<p>New: Minify on Publish (Coda 2 only)<br>New: Modify file extension list for PHP validate on save<br>Check if Growl is present, includes Growl 1.2 and Growl 1.3 notifier<br>CSSTidy: New option Remove last ; \u2013 control if the last ; in a block is removed or not<br>CSSTidy: Workaround for wrong @import behavior<br>JSHint: Doesn\u2019t report useless strict warnings anymore<br>JSHint: Removed unused \u2013safe option<br>JSHint: Added link to option documentation in the preferences<br>CSSTidy\/JSMinify: CR\/LF handling improved<br>PHPTidy won\u2019t try to format php files with syntax errors<br>Rewritten launching of php based tools, more robust now<br>Refactoring PHP error display<br>Performance\/memory improvements<br>Preferences layout improved, added Google+ link<\/p>\n<h5>3.6<\/h5>\n<p>\u201cUnified\u201d version for Coda 1 and Coda 2<br>Checks automatically if accidentally more than one plugin is installed<br>New function: PHP validate on save (Coda 2 only)<br>Javascript JSHint: Updated to a new version<br>Javascript Tidy (JSBeautify): Update to latest version, no file size limit anymore, CR\/LF handling correctly now<br>CSS Tidy: Update to latest version, CR\/LF handling correctly now<br>Performance improvements (loading time, js functions)<br>New version notification now shows the new version number&#8230;<br>Plugin path is now correct for Coda 1 and Coda 2<\/p>\n<h5>3.5 beta<\/h5>\n<p>Coda 2 compatible version<br>New preference setting for JSHint: Use smart tabs<br>\u201cGo to line\u201d (for PHP errors) now uses the API function in Coda 2, so it scrolls to the error location<br>Automatic update should now work correctly with Coda 1 and Coda 2<\/p>\n<h5>3.4<\/h5>\n<p>Remove proCSSor because the API service has been cancelled<\/p>\n<h5>3.3<\/h5>\n<p>Small bugfix for Prefs window layout<br>Internal structure improvement<br>Fix (improbable) memory leak<\/p>\n<h5>3.2<\/h5>\n<p>Validate PHP syntax before performing PHPtidy<br>Minify CSS<br>Updated CSSTidy<br>Preferences window improved (links to twitter\/fb\/donate)<br>JS Hint: Many more options<br>JS Hint: Respect line endings, whitespace warnings now correct<br>JS Tidy: Respect line endings<\/p>\n<h5>3.1<\/h5>\n<p>JS Tidy now also configurable<br>proCSSor bugfix<br>Respect Tabs\/Spaces where available<br>Automatic Update (finally..!!)<br>Improved validation results<br>JS Hint updated<br>PHPTidy improvements<br>JS Hint: Remove (quite useless) &#8220;unsafe character&#8221; warning<br>Result window looks cooler now<br>Modularized the code<br>Modularized the code<br>Prefs window improved<\/p>\n<h5>3.0<\/h5>\n<p>Use selection<br>Growl (and growl-like) notifications<br>Results as floating window<br>More preferences for PHPTidy<br>HTML online validation: Included three validator settings<br>Drop curl, use cocoa instead<br>Use JSC call instead of shell script<br>JShint preferences<br>Improved preferences layout<br>Bugfixes, lots of<br>Nearly complete code rewrite<\/p>\n<h5>2.7<\/h5>\n<p>Show an short message after updating (only once)<br>Updated CSSTidy to 1.3.1<br>HTML Validate output improved<br>HTML5 <q>support<\/q> aka workaround for tidy<br>JSLint replace by JSHint (upgrade, kind of)<br>Preference for PHPTidy: Fix statement brackets<\/p>\n<h5>2.6<\/h5>\n<p>Preferences for PHPTidy: New lines, Whitespaces, Comma spacing<br>Bugfix for umlaut conversion with JSTidy<\/p>\n<h5>2.5<\/h5>\n<p>Set CSS Level for validation (2, 2.1, 3)<br>Configure PHPTidy braces placement<\/p>\n<h5>2.4<\/h5>\n<p>Warning message (incompatible plugin) improved<br>Before accessing proCSSor, check if incompatible plugin present<\/p>\n<h5>2.3<\/h5>\n<p>TidyCSS update (current SVN)<br>W3C online response much more readable<br>Check for incompatible SBJsonParser<br>Error messages improved<br>Updatecheck circumvents cache now<\/p>\n<h5>2.2<\/h5>\n<p>New: Beep only for PHP validation<br>Preferences window now remembers the open tab<br>Preferences window revamped (again..)<br>Shortcuts also shown in the preferences<br>HTML Tidy version in about window now modified if &#8220;use internal&#8221; is changed<br>Improved some tooltips in the preferences<\/p>\n<h5>2.1<\/h5>\n<p>New: procssor.com configurable<br>New: JSBeautifier included<br>About window now part of the preferences<br>Preferences window revamped<br>Code clean-up<br>Shortcut for JS Beautifier<\/p>\n<h5>2.0<\/h5>\n<p>New: Encoding automatically selected<br>New: Custom HTML tidy configuration<br>New: Included a more recent HTML tidy binary<br>New: procssor.com online service included (experimental)<br>Goto line now works correctly with different line endings<br>Line endings now respected in HTML tidy, CSS tidy and PHP tidy<br>HTML tidy version shown in the about page<br>Preferences window new layout<br>JS lint now correctly handles backslashes<br>Error messages improved<br>Message sheet layout improved<\/p>\n<h5>1.9<\/h5>\n<p>New: JS Minify<br>HTML Validation report window now can be close without the annoying &#8220;Save Changes&#8221;-question<br>&#8220;Reveal in Finder&#8221; bugfix at preferences page<br>Donation button in the about window (Hint: click it :)<\/p>\n<h5>1.81<\/h5>\n<p>CSS tidy now handles CSS3 values starting with a dash (-)<br>Keyboard shortcuts for CSS tidy and Preferences<br>Some code clean-up<\/p>\n<h5>1.8<\/h5>\n<p>Javascript Lint (JSLint) now included<br>Update check now daily instead of each time Coda starts<br>New CSS tidy configuration: Sort attributes<\/p>\n<h5>1.7<\/h5>\n<p>HTML tidy now configurable (in the Preferences) !<br>Preferences are automatically saved<br>Bugfix when saving Coda Prefs<\/p>\n<h5>1.62<\/h5>\n<p>Automatic update check now in the background (asynchronous)<br>CSS tidy now configurable (in the Preferences) !<br>Less intrusive error-messages on connection failures<\/p>\n<h5>1.6<\/h5>\n<p>User Preferences<br>Automatic check for updates<br>CSS tidy integrated<br>Structured Menu (aka Submenus)<br>Using the HTML-tidy version delivered with OSX (PowerPC compatible)<br>Redesigned the error- and &#8220;validation okay&#8221;-sheets XCode-like<br>More encodings: ASCII, UTF-16, Windows CP-1252<br>All functions use the current buffer contents now<br>Error messages not explicitely state their origin<br>Updated phptidy to current version 2.10<\/p>\n<h5>1.4<\/h5>\n<p>W3C-Validation online for HTML-files<br>W3C-Validation online for CSS-files<br>Help button (on the about sheet) now opens this page<\/p>\n<h5>1.31<\/h5>\n<p>W3C-Validation service, 1st try<\/p>\n<h5>1.3<\/h5>\n<p>Improved Sheet display<br>Bugfixes<\/p>\n<h5>1.13<\/h5>\n<p>Validate HTML (via tidy)<br>Jump to error line \u2013 if PHP validation finds an error<br>Check for Updates (in the about-box)<br>File encoding can be chosen<br>Nice sheets, no more of those ugly alert-boxes<br>Menu items are only available if they should be<br>Lots of code cleanup<br>More useful \u201cAbout\u201d-dialogue, link to the plugin homepage<\/p>\n<h5>0.96<\/h5>\n<p>&#8220;About..&#8221;-dialog<br>Improved exception handling<br>Bugfixes<\/p>\n<h5>0.9<\/h5>\n<p>New features: HTML tidy, Strip PHP, PHP tidy<br>Included HTML Tidy<br>Included phptidy<br>Bugfixes<\/p>\n<h5>0.85<\/h5>\n<p>Bugfixes, dialogs updated<\/p>\n<h5>0.8<\/h5>\n<p>Initial release<\/p>\n<\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Problems?<\/h2>\n\n\n\n<p>First have a look <a href=\"https:\/\/www.chipwreck.de\/blog\/software\/coda-php\/help\/#quick\">here \u00bb<\/a> &#8211; if that doesn&#8217;t help, please write a comment below.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Enjoy using this plugin?<\/h2>\n\n\n\n<p>Great!<br>Just leave a comment or <a href=\"\/blog\/donate\">donate (via paypal) \u00bb<\/a>.<\/p>\n\n\n\n<p>For German users I can only recommend <a class=\"external\" href=\"http:\/\/all-inkl.com\/?partner=184350\">all-inkl.com<\/a> (Partnerlink).<\/p>\n\n\n\n<p class=\"toplink\"><a href=\"#top\">\u21e7 top<\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Planned Features<\/h4>\n\n\n\n<div class=\"changelog\">\n<ul class=\"grey\">\n<li><del datetime=\"2011-04-07T00:54:25+00:00\">Apply some functions only to the selected area if desired (DONE &#8211; in the current beta)<\/del><\/li>\n<li><del datetime=\"2011-04-07T00:54:25+00:00\">Floating result windows\/Growl-like notification\/Use Growl (DONE &#8211; in the current beta)<\/del><\/li>\n<li><del datetime=\"2011-04-07T00:54:25+00:00\">Switch online validators more easy (DONE &#8211; in the current beta)<\/del><\/li>\n<li><del datetime=\"2011-04-07T00:54:25+00:00\">Rewrite curl methods in cocoa<\/del><\/li>\n<li><del datetime=\"2011-05-01T22:46:46+00:00\">Add configuration options for JSTidy<\/del><\/li>\n<li><del datetime=\"2011-05-01T22:46:46+00:00\">Automatically install updates<\/del><\/li>\n<li><del datetime=\"2012-05-31T17:46:00+00:00\">Use Coda 2 API for go to line (DONE &#8211; in the current beta)<\/del><\/li>\n<li><del datetime=\"2012-05-31T17:46:00+00:00\">Use Coda 2 API for automatic PHP validation before saving<\/del><\/li>\n<li><del datetime=\"2012-07-03T00:17:00+00:00\">Up next: Minify JS\/CSS automatically on publishing<\/del><\/li>\n<li><del datetime=\"2012-11-02T20:27:30+00:00\">CSS minify: Check other minifier<\/del><\/li>\n<li>Respect spaces per indent (in different cases)<\/li>\n<li>PHP tidy: Preserve whitespaces, if possible<\/li>\n<li>Minification: Upload .min.css or similar, if possible<\/li>\n<li>Check new HTML5 tidy<\/li>\n<li>Javascript execution directly via cocoa (improvement necessary)<\/li>\n<li>Make PHP tidy <em>more<\/em> configurable <del datetime=\"2011-01-24T20:24:06+00:00\">(if possible)<\/del><\/li>\n<\/ul>\n<\/div>\n\n\n\n<p class=\"toplink\"><a href=\"#top\">\u21e7 top<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Download \/ Feedback \u2022 Help \u2022 Coda Tips About \u2022 Download \u2022 Comments\/Feedback A Coda plugin aimed at PHP &amp; Web development &#8211; not in active development. Current version: 4.1 &#8211; Coda 1 and Coda 2 Features (Automatic) PHP syntax validation with jump to error and auto-save Clean up\/reformat HTML, CSS, Javascript and PHP code &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.chipwreck.de\/blog\/software\/coda-php\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Coda PHP &#038; Web Toolkit&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"parent":603,"menu_order":1,"comment_status":"open","ping_status":"open","template":"","meta":{"footnotes":""},"class_list":["post-723","page","type-page","status-publish","hentry"],"jetpack_shortlink":"https:\/\/wp.me\/PaPEN-bF","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.chipwreck.de\/blog\/wp-json\/wp\/v2\/pages\/723","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.chipwreck.de\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.chipwreck.de\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.chipwreck.de\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.chipwreck.de\/blog\/wp-json\/wp\/v2\/comments?post=723"}],"version-history":[{"count":5,"href":"https:\/\/www.chipwreck.de\/blog\/wp-json\/wp\/v2\/pages\/723\/revisions"}],"predecessor-version":[{"id":8316,"href":"https:\/\/www.chipwreck.de\/blog\/wp-json\/wp\/v2\/pages\/723\/revisions\/8316"}],"up":[{"embeddable":true,"href":"https:\/\/www.chipwreck.de\/blog\/wp-json\/wp\/v2\/pages\/603"}],"wp:attachment":[{"href":"https:\/\/www.chipwreck.de\/blog\/wp-json\/wp\/v2\/media?parent=723"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}