How To – Installing Swish-e v2.4.5

Background Knowledge


The installation of Swish-e v2.4.5 is being installed on a system with OpenBSD v3.7 i386 and Perl v5.8.6 using BASH as the command prompt interrupter.

What is Swish-e?


As quotes by Swish-e.org…

“Swish-e is a fast, flexible, and free open source system for indexing collections of Web pages or other files. Swish-e is ideally suited for collections of a million documents or smaller. Using the GNOME™ libxml2 parser and a collection of filters, Swish-e can index plain text, e-mail, PDF, HTML, XML, Microsoft® Word/PowerPoint/Excel and just about any file that can be converted to XML or HTML text. Swish-e is also often used to supplement databases like the MySQL® DBMS for very fast full-text searching. Check out the full list of features.”

Continue reading

Visual Studio 2005 – Change Default Debug Browser

I began play with Visual Studio 2005 and discovered that Internet Explorer is used for debugging. In the past one could change the default browser before going to the file menu then to “Browse With” in Visual Studio however this seems to have changed. Here is a couple solutions I found out how to change your default browser in Visual Studio 2005.

Solution One


  1. Go to File menu > New > Web Site.
  2. Go to File menu > Browse With.
  3. The “Browse With” dialog will appear, click on Add and then select your preferred browser.
  4. Click on your preferred browser in the list and click on “Set as Default”.
  5. Click on “Browse” or “Cancel”.

Solution Two


  1. Left click on a aspx file in the “Solution Browser” and click “Browse With”.
  2. The “Browse With” dialog will appear, click on Add and then select your preferred browser.
  3. Click on your preferred browser in the list and click on “Set as Default”.
  4. Click on “Browse” or “Cancel”.

Source: Changing your debug browser to Fire Fox in Visual Studio 2005

Perl – Out of Memory!

Background Knowledge


This case was done on a machine running OpenBSD i386 v3.7 operating system with Perl v5.8.6 built for i386-openbsd using BASH as the command prompt interrupter.

I’ll be honest I have very little knowledge of Perl so if you have anything to comment on or suggest please do so.

Problem


I tried to install a couple Perl modules and received an error message of “Out of Memory!”.

Solution


Just to clarify I have very little knowledge when it comes to Perl, so this solution may or may not work for you.

On Unix machines each user has a ulimit or “user limit” which is basically from what I understand sets the limit for each resource to ensure the system is not over loaded or abused. In this case at least for me, my issue was not having a big enough data seg size. Type at the command prompt without quotes “ulimit -a” to see a list of the set limits. I increased my data seg size from 76800 to 200000. I did this by typing at the command prompt without quotes, “ulimit -d 200000″.

You may need to play with this value for your case or other ulimits. Don’t worry about the changes as none of them are permanent in this case, at least to my knowledge. When you use the ulimit it only changes it for the user you are using and for that given session. If you require more permanent changes look into using ulimit in the login script or better yet change your system configuration settings.

Comments/Thanks


Many thanks to Scott Corley who posted an excellent blog entry entitled “perl Out of memory! (with solution)” on his blog called “Red Mercury Labs”. Without this I was getting know where fast.

If anyone can provide some further knowledge on ulimit it would be much appreciated.

Source: Red Mercury Labs – perl Out of memory! (with solution)

French Characters Not Rendering Correctly

Background Knowledge


The MySQL database v4.0.23 is using the default character set of “Latin1″. When the database was created I had no knowledge of character sets other wise it would have been “UTF-8″.
The web pages are using a character set of “UTF-8″.

Problem


Data being queried from a MySQL database that contains French accent characters will not render correctly in the browser even after applying PHP htmlentities().

Example code: $string = htmlentities($string , ENT_QUOTES, “UTF-8″);

Solution


The queried data from the database was inputted using the character set “ISO-8859-1″. I found this out by changing the browser’s character encoding to “Western ISO-8859-1″ and the French accent characters then rendered properly. With the use of PHP iconv() I was able to convert the data from “ISO-8859-1″ to “UTF-8″ character set and the French characters then rendered properly in the browser.

Example code: $string = iconv(“ISO-8859-1″,”UTF-8″,”$string”);


If you are unaware of what MySQL default character set being used, you can run this SQL command “show variables like “%character%” and check your MySQL configuration file. Refer to the MySQL manual for further details.

Finding The Total Lines Within Files

I have learned by using the “find”, “wc” and “awk” commands one can find the total number of lines within files of a given directory and sub-directories. Thanks to NicM on IRC server Freenode channel #OpenBSD for his solution below.

Solution
find /path/blah -type f -name ‘*.php’|while read i; do wc -l <$i; done|awk ‘BEGIN { x=0 }; { x+=$1 }; END { print x }’

Note: Shell must be bourne-compatible.