Writing code in QLingo for XMPie uStore in InDesign is challenging since it can be difficult to read due to the font and lack of colours to highlight key areas. I prefer to write code outside of InDesign so that I can save it in an easy to reference format.
My programming editor of choice and editor for general usage is Notepad++. It supports multiple programming languages and gives the option of adding your own custom language. I created a QLingo language addon that you can download from the following link: QLingo for Notepad++.
Comments in your code are deleted when you import into your InDesign document, but its useful to keep in your saved source code for when your debugging it 3 months from now..
<sarcasm>Everyone enjoys seeing Windows messages like the following:</sarcasm>
You canâ€™t delete files in Windows when their file handle is still open in the operating system. This can still occur even after you closed the document and the application that was used to display it.
One solution is to reboot the computer which may release the file handles, but this doesnâ€™t always work. Unlocker is a system tray application for Windows that can force file handles to close and delete processes. Unfortunately, it wonâ€™t delete locks over networks, but there are other ways to do it manually.
The application is free and it uses very little memory when running. You donâ€™t need to run it all the time, though. I just use it when I have file problems and then close the application afterwards. This is a must have application for Windows users.
Now that I’m using PowerShell more, I’m looking for a good editor for it. The GUI editor that comes with PowerShell 2.0 is ok, but it only works well with editing one document at a time. If you have multiple libraries and modules, it may be difficult managing your project.
The first place I looked was finding a plugin for Eclipse, and found pscoder. This is an open source plugin from Google Code. The plugin is very basic, but it does colour code the source and has comment/uncomment hot key support. Its still a work in progress, but so is the GUI editor from Microsoft.
Every systems administrator and power user is very familiar with CMD.EXE: the command line interpreter for Windows. Its used for running applications from the command line, and also for performing administrative tasks with batch files. Not much has changed with the traditional command line interpreter from the days of DOS 1.0. The batch language has improved and more functionality has been added, but its still very limited and not as capable as Linux command shells (i.e. bash).
Taking on Bash
All of this has changed with Microsoft’s PowerShell. This is a vastly improved command line shell with a built-in programming language. The language is very similar in capabilities to PHP or Perl and works very well with creating small utilities for Windows. The big advantage of PowerShell over Linux shells is the vast .NET Framework that it has access to. You can write a script that can extract data from a Microsoft SQL Server database, send it by FTP to a remote folder, and then send an e-mail notifying a user where they can find the files that were transferred. Before this, a batch file would have to call external applications to perform the FTP and e-mail functions.
PowerShell scripting can easily be replaced by any of the Visual Studio .NET languages, but it has the advantage of being able to edit source code and immediately execute it.
Apart from scripting, the shell is also very good for executing commands, or cmdlets as they are called, from the command line. With this, you can perform complex operations that would require a great deal of programming to do.
Choose the Right Version
If you search Microsoft.com, you will find Windows PowerShell 1.0, but I would not recommend using this version. A better choice is the Community Technology Preview version of PowerShell 2.0. This version supports running scripts on a remote machine, creating cmdlets with its scripting language, reusable modules for organizing scripts, a GUI integrated scripting environment, and many more useful features.
Uninstalling PowerShell 1.0
Before you can install PowerShell 2.0, you need to uninstall version 1.0 if you installed it previously. This can be done by checking on the Show updates box in Add or Remove Programs (Control Panel). This is required otherwise Windows PowerShell will not be visible for uninstalling. You can find it in the Windows Software updates section.
Is It Worth Learning?
PowerShell is a powerful scripting language and can hold its own again PHP and Perl. The command line interpreter will save you time as a Windows administrator and you won’t go back to CMD.EXE or batch files after learning it. PowerShell is worth the effort in mastering it.
PHP is an open source language, but it lacked good development tools for many years. The majority of PHP programmers used free editors to write code. Zend created a full featured PHP development tool (Zend Studio) but it carried a hefty price tag, which many programmers were unwilling to pay. So, most just used the free editors they already had.
There are expensive options for PHP development environments, i.e. Zend Studio, Delphi for PHP, but there is also an extension for Eclipse which can be used for PHP programming. The PDT Project is a development tools framework with features comparable to its commercial counterparts.
The PDT Project can be installed as a Eclipse extension, or as a complete Eclipse application with PDT setup. You can download it at the PDT Project page. The software doesn’t get installed, you just extract the contents, move the eclipse folder to where you want it, and then run eclipse.exe (create a short-cut for your desktop).
After running eclipse, you should download the Remote System Explorer tools so that you can connect to web sites by FTP and SSH. The easiest way to install this is through the Software Updates option on the Help menu, and then go the available software tab. Search for the word remote and the options in the screen below will be displayed. Check the options as below and press the Install button. The remote tools will then be installed.
Once all of this is installed, your ready for PHP development.