Multi-Search3

MonkeyWordSearch - Powerful, Free Linux Keyword-search Utility!




Searching for a free search program(Linux bash script) with GUI input controls? Want to see results on your browser? Love keyword highlighting? Need to see not just result fragments from file but the file itself? Want to restrict searches to ASCII/text files only but need to view list of files that weren't searched also? Want a clickable link for EVERY FILE with or without a match within the domain of the search? Want to see the progress of the search with an oscillating progress bar and a scrolling percentage-completed tailbox?

Welcome to MonkeyWordSearch! The Monkey's got it all for you!

Read on.

REQUIREMENTS

1.Zorin7 OS [Ubuntu] Linux
2.A modern browser that supports CSS3 transitions [I used Chrome28.0, Firefox28.0, Opera12.16]
3.Zenity [I used version 3.6.0]
4.GNU Awk 4.0.1
5.Rxvt v2.6.4
Screen resolution: 1280 x 800 [Recommended]

FEATURES

MonkeyWordSearch is a powerful recursive keyword search utility with GUI input box, file select control, file-type and maxdepth filters which let you search files on your Linux PC/Laptop for your search phrases. It's features are listed below.

1.View results on browser: Display the search results on the browser.

2.Highlight keywords/search phrase[Case-insensitive!]: Highlight the keywords within search results for emphasis. You'll like it that Monkey displays a match regardless of whether it is UPPERCASE, lowercase or CamelCase!

3.List text files with/without result: Locate and separately list which files contain results and which do not.

4.List non-text(skipped) files: Locate and separately list skipped non-text/ASCII files.
4a.Here's something even more interesting. Click on the [Clickable File List] button to view the clickable version of the same page useful for viewing pdfs, images etc but remember to NOT CLICK on executable or very large files.

5.Display results as Encoded or Normal: Click anywhere inside the result box or click on the [View Results] link above the result box to display the results page that pops up for text-view or web-view of the search results. While the top [HTML-Encoded text view] is always intact, remember that the bottom [Normal HTML web view] below it may sometimes seem broken since incomplete HTML code in search results might make it look broken. This is normal behavior. Click on the [Result Fragments: Normal] button on top of the page TWICE to bring up the normal section to top.

6.View search file itself, not just results: Click on the [View File] link on the top-right of the search result box to view the file on the browser. If this link did nothing, then the filename may have goofy characters in it and, most often we can click either on the search result box or the [View Results] link and then click on the link to the file on top of the results page. If this didn't work either, at least we have the filename parts with the path so we can open the file manually.

7.Exclude big files from search but view their names: Exclude big files [greater than 5MB] from the search but view their names.

8.Find search progress percentage-completed [MonkeyWordSearchTailbox window]

How do I activate/de-activate this window? This window is activated by default. To de-activate it, find and comment these two lines in the [$HOME/tools/MonkeyWordSearch/Mws.bash] file.

[You may activate it again by uncommenting the two lines above if you choose to.]

How is it useful? Once you press [OK] on the 4th and final input box, you see this window if it is activated. This Rxvt terminal window with a fast-scrolling tailbox displays the total file count, percentage-completed, current file being processed with path among other things.

How do I exit from it? Press [CTRL-C] from within this window to exit from it. Double-click on [$HOME/tools/MonkeyWordSearch/MwsCleanup.bash] script to terminate MonkeyWordSearch completely. Find more details at the [III.Termininating MonkeyWordSearch] section below.

Is there a search log? Remember to check the [$HOME/tools/MonkeyWordSearch/MwsSearchLog.htm] file for the complete record of the search after the search completes.

9.MonkeyWordSearch window: Once you press [OK] on the 4th final input box, this [oscillating progress-bar] window starts up along with the [MonkeyWordSearchTailbox] window. Along with keyword and other input parameter details, you can also view the search progress with an oscillating progress bar. You may stop and exit from the Monkey before it completes by pressing [Escape] from within this window and pressing [Ctrl-C] from the MonkeyWordSearchTailbox window. Don't forget to cleanup strays with [$HOME/tools/MonkeyWordSearch/MwsCleanup.bash] before re-running the Monkey!

10.Use 4 GUI input boxes: These are used for inputs. Press [Escape] to exit.


NOTE 1: LINUX COMMANDS AND TOOLS USED
You wouldn't believe it that a simple program such as MonkeyWordSearch needs so many Linux commands and tools to fetch you the results! First you need to manually verify or set 4 files at the top of the $HOME/tools/MonkeyWordSearch/Mws.bash script. Change samples below to suit your environment.

#Define your browser location below
BROWSER=/usr/bin/chrome
#Define awk location below
AWK=/usr/bin/awk
#Define rxvt location below
RXVT=/usr/bin/rxvt
#Define zenity location below
ZENITY=/usr/bin/zenity

Apart from these, there are 17 Linux commands/tools Monkey needs. You may appreciate the fact that Monkey automatically scans and sets the locations of these following essential Linux commands without you having to manually check each one of them. When you run Monkey, one of the first things it does is to check for these 17 files and error out if it misses anything. If MonkeyWordSearch doesn't start up, open the [$HOME/tools/MonkeyWordSearch/MwsMissing.out] file to view the details of found and not found files and fix the problems if any and re-run Monkey after fixing problems. Here's the list of these mostly standard and almost always available 17 Linux commands/tools:

mkdir bash mv rm touch echo grep cat sed find sleep file wc expr bc cp sort 

NOTE 2: SIZE OF EXCLUDE FILES
While leaving out non-text/ASCII files, Monkey also excludes text files bigger than 5MB from being searched but lists their names so you can search those big files manually if you choose to. You can change the default big file size by searching for and changing the line below in the Mws.bash script

if [ $fsize -le 5242880 ]; then

NOTE 3: OPENING FILES FROM MONKEYWORDSEARCH BROWSER LINKS OR BUTTONS
MonkeyWordSearch has made it easy for you to be safe when you click on files to open them from the browser by segregating non-text/ASCII files and excluding them from being searched. Again, even among text/ASCII files it picks out and excludes files bigger than 5MB from being searched. Best of all, MonkeyWordSearch presents you a  skipped(non-text) files page with non-clickable list of file names by default, but you can make it clickable by pressing the button just above the list. Talk about having the best of both worlds, safety and convenience! As a general rule of thumb, though, ALWAYS exercise caution when clicking on links because of the way browsers make file-associations. For example, don't click on executables, huge files etc.

NOTE 4: BROWSE YOUR SEARCH FOLDER WITH YOUR BROWSER!
Click on the link to the right of [Search Location] on the top of the main search result page to browse the search folder with your browser.

NOTE 5: X-RAY-MONKEY: MONKEY FOUND A RESULT BUT I CAN'T FIND IT IN THE FILE - HEY WHAT'S UP?
The result box shows a match but when you open the file and search for it you don't find it, what's going on? This may happen when you're searching html files where there could be matches found in non-content areas such as html code or javascript code. If you're opening the html search file with your browser, rightclick and select [view page source] and then press [CTRL-F] to do a search and you'll find it.

NOTE 6: [ViewFile] LINK ON TOP-RIGHT OF SEARCH RESULT BOX WON'T WORK - HEY WHAT'S UP?
If the [ViewFile] link on the top-right of the search result box doesn't open the file, the filename possibly has some weird characters. Click inside the result box to open the results page on a new tab/window and click on the link on the top of the page to open the file. If this doesn't work either, at least we have the path and filename of this rogue! Just open it with your file manager.

NOTE 7: RESULTS FROM A ZIP FILE IS SHOWING UP IN THE RESULT BOX - HEY WHAT'S UP?
Sometimes you may see results from zip files shown in the result box. This may be normal. If a html file is compressed into a zip file, it may be seen as "HTML document, UTF-8 Unicode text, with very long lines" by the [file] command that is used to filter text/ascii files. In this case, the file may be opened by a text editor.

NOTE 8: SMART IDEA - SAVE THAT SEARCH!
Let's say you just searched for files with the keyword [Linux] and want to save it for future. Just copy the [Mws.htm] file and rename it to something such as [Mws.linux.htm]. This will benefit especially those who keep their stuff well-organized on their PC/Laptop since they will have only one two places to search for anything! Isn't this a good idea?

NOTE 9: DUMB SEARCHES[?]
1.Avoid searching system folders if you don't intend to.[Eg. /var, /usr, /etc etc.]
2.If you delete lots of files using PcManFM GUI file manager, then your [/root/.local/share/Trash] folder for root user or [$HOME/.local/share/Trash] folder for non-root users may be huge. Remember to avoid searching these if you don't intend to.
3.Your [$HOME/.thumbnails] folder may have tens of thousands of files, you may not want to search these.

CONCLUSION

This Monkey sure made me go all bananas! Seriously, it took a lot of time and effort to get it going but it sure will make your life easy if you choose to use it! MonkeyWordSearch makes searching files on your Linux system for keywords a much better experience first since it lets you view results on your browser with keyword highlighting. Secondly you can view not just the results but the file itself. Thirdly you get a clickable list of files with results and those without. Fourthly you get a clickable list of skipped(non-text) files. And most of all, it lets you view the progress of the search the whole time while letting you terminate it INSTANTLY with just a double-click on [$HOME/toos/MonkeyWordSearch/MwsCleanup.bash] then clicking [Open] or by typing [mwsclean] from the commandline!

Here's the secret. Once you get used to typing [mws] and [mwsclean] from the commandline or its equivalent of double-clicking on [$HOME/toos/MonkeyWordSearch/Mws.bash] and [$HOME/toos/MonkeyWordSearch/MwsCleanup.bash] and then clicking [Open] to start and terminate the Monkey, I guarantee you'll be using them all the time without knowing it!

  • Visit my website [Sqlhtm.com]
  • Read my blog at Blogger [Sqlhtm.blogspot.com]
  • Read Some Top Tweets From Me And Others!
  • Read Some DIY[Do-It-Yourself] Ideas Of Mine
  • PolarVerses - Display Your Tweets/Bible Verses Proudly! Free!
  • Multi-search3 - Powerful 3-in-1 Web Search! Free!
  • Aesop Fables Browser - Legendary Animal Tales With My Short Summary Tweets! Free!
  • Font3dTemplates - Slideshow Of Wordart I Made With It.[Chrome15.0-Win7/XP]. Free!
  • Bible Reader - You can still read the Bible from here! Free!
  • A Cool Database Tool I Made! Free!
  • Another Neat Database Tool You Can't Be Without! Free!
  • Linux[Zorin7 OS] Power Tip - Make The Start Menu And Task Bar Truly Yours

    If you're like most people, you just use your pc/laptop as you bought it - with no snooping, no messing around - use it just the way it is. Why fix stuff if it isn't broken in the first place, right? While this policy may be best-suited for most end-users, it may not be good enough for the adventurous few, especially the geeky programmers, developers etc. They tend to take everything apart, whether or not they can put them back together. Adding user programs and scripts to the Start Menu was beyond most people's reach not too long ago. Why bother when you can create shortcuts on the desktop? Not any more. Zorin7 OS [Ubuntu] comes with a program called [Main Menu] you can start from [Start Menu->Accessories] that helps us add our programs and scripts to the Start Menu. It also has an applet on the task bar [Application launch bar settings] to add stuff to the task bar. You can start this by rightclicking on an icon in the task bar on the LHS, to the right of the [Start Menu] icon.

    We are going to accomplish four things in this exercise


    1. We'll create a oneliner shell script that digs up a random word, looks it up on the dictionary and lets you view the results from your browser.
    2. We'll describe the steps to add it to the Zorin7 OS startup menu.
    3. We'll describe the steps to add it to the Zorin7 OS taskbar with an icon for a one-click word lookup anytime.
    4. We'll conclude everything with a bigger and better script that includes both the random word lookup on step1 above(no user input) and ALSO a user-word lookup(optional user input).

    STEP 1: CREATE THE ONELINER SHELL SCRIPT FOR RANDOM WORD LOOKUP


    A. Create the oneliner shell script for our random dictionary lookup

    First create a folder such as /home/jwhat1/Tools/LDWords, create a new file[LookupDictWords.sh] and save the code below in that file within that folder (You can use a GUI editor such as Geany or Leafpad or you can use terminal editors such as Vi or Emacs or Nano to create/edit a text file in Linux).


    Download script

    B. Open up a terminal and change the file to executable.



    Instead of running the command above from a terminal, you could also locate it on PCManFM file manager, rightclick on this file, select [properties], and set [view content] and [execute] to [anyone] and [change content] to [only owner and group] on the [permissions] tab.

    C. Associate this file to be run by /bin/bash.

    Rightclick on this file, select [Open With], click on [Custom Command Line] tab and enter [/bin/bash] in the [Command Line To Execute] input box, and click [OK].

    D. Run the script

    I.From the commandline on a terminal
    Type
    $bash LookupDictWords.sh

    II.With PCManFM GUI file manager
    1.Rightclick on LookupDictWords.sh and select [/bin/bash] to run it.
    2.Doubleclick on it and when you see [Execute file] dialog box, click on [Open] to run it.

    Yes! It works!(Click on image above for bigger view)

    STEP 2: ADD THE SCRIPT TO THE ZORIN7 OS START MENU


    So we have completed the first step of creating the file. Now let us see what we need to do to put it in the Start Menu.
    1.First bring up [Main Menu] from [Start Menu->Accessories->Main Menu]. (Click on image above for bigger view)
    2.Open the [New Menu] input box from [Main Menu->New Menu] and type the name of the menu/program group and a comment. Click on the icon on the top left on the input box to select an icon for our new program group if you wish.(Click on image above for bigger view)
    Do you see the new Main Menu group we just created on top left? (Click on image above for bigger view)
    3.Now, create a new menu item
    1. [IMPORTANT] Click FIRST on the new menu group we created on top left.
    2. Click on [New Item] button on the right.
    3. Now enter a name. Use the [Browse] button to select the script or enter it manually. Type a comment if you want.
    4. Click on the icon on the top left of the input box to select an icon for our new program if you want. (Click on image above for bigger view)
    Make sure to confirm the new menu item we just created(It's in the middle right on top). (Click on image above for bigger view)
    4.Click on [Start Menu->LDWords->LookupDictWords.sh] to run our new script! Did you see the random word lookup results on your browser? I did. We have successfully accomplished the first half of our goal - configuring the Main Menu to display our script! (Click on image above for bigger view)
    Before and after images of the Start Menu. Do you see the menu group[LDWords] and menu item[LookupDictWords.sh] we just created in the Start Menu? Good! (Click on image above for bigger view)

    STEP 3: DISPLAY THE SCRIPT ON THE ZORIN TASKBAR


    1.Rightclick on an icon in the taskbar on the LHS to the right of the [Start Menu] and select [Application Launch Bar Settings] to bring up the [Application Launch Bar]. (Click on image above for bigger view)
    2.Click on the [Arrow] to expand the [LDWords] group on the RHS and select the [LookupDictWords.sh] script. (Click on image above for bigger view)
    3.Now click on the [+Add] button in the middle of the box to add the script to [Applications] on the LHS. Use the [Up] and [Down] buttons in the middle to move program icons on the task bar to the left or right. (Click on image above for bigger view)
    4.Can you now see our script on the taskbar on the LHS to the right of the Start Menu? Click on it to run the script. (Click on image above for bigger view)
    Yes! It works! We've got the results displayed on the browser automatically! (Click on image above for bigger view)
    From now on, whenever you are thirsty for learning words or just bored, click on our icon on the taskbar to look up a random word! Just wait till you see the results on the browser before clicking again because clicking fast might return unpredictable results.
    Before and after images of the task bar . Do you see the icon for LookupDictWords.sh in the task bar? Good! (Click on image above for bigger view)

    STEP 4: USE THE BIGGER AND BETTER SCRIPT [Includes BOTH User Word Lookup & Random Word Lookup]


    Here's a bigger and better script that
    • Lets you lookup YOUR OWN WORD on the dictionary
    • Comes up with a random word if you leave the input box empty and press [OK]
    • Above all, looks much better than the random script output!
    Here are the steps.

    Step 4A. Back up the random word script above(For when you want to use the random script above seperately).
    $cp LookupDictWords.sh LookupDictWords.sh.random
    Step 4B. Open LookupDictWords.sh. Select all code, delete it. Now copy the code from the box below, paste it to the LookupDictWords.sh file and save.



    Step 4C. Click on the task bar icon for LookupDictWords.sh script to start.

    FOR USER INPUT
    Enter your word and press [OK] for user word lookup or
    FOR RANDOM WORD
    Leave input empty and press [OK] for random word lookup or
    TO EXIT
    Press [Escape] key or click on [CANCEL] to exit.
    If you like this bigger script, leave it as it is. If you are lazy or if you want no input box annoyance, use the code we saved and backup this for later use instead.

    PLEASE NOTE


    REQUIREMENTS
    Zorin7 OS and a browser(I used Chrome 28).
    Zenity(I used version 3.6.0).

    ADD SCRIPT TO MAIN MENU FIRST
    User programs and scripts need to be added to the Start Menu first before you can add them to the task bar.

    DEBUGGING
    First open a terminal, go to /tmp directory and run one or more of the following commands to debug.
    cd /tmp;
    If the browser won't start, make sure you can start your browser manually by typing at the command prompt
    $chrome
    or
    $firefox
    etc. Use
    $which chrome
    or
    $which firefox
    etc to get the path and insert it in the script if needed.

    You may also use the commands below.
    ls -l dicx.htm [See if output file exists]
    cat dicx.htm [View contents of output file]
    ps -ef|grep LookupDictWords.sh [Use this to see if the script is running and possibly remove it with the [kill -9 pid] command if needed]

    CLICK-AND-WAIT
    Click gently on the LookupDictWords.sh icon on the task bar, and WAIT for the browser to come back with the results BEFORE CLICKING AGAIN. Fast and furious clicking may cause unpredictable results.

    CREDITS


    Random number selection logic in the oneliner: Advanced Bash-Scripting Guide[MC]

    THAT'S ALL FOR NOW!


    How do you like what we have done so far? Starting our favorite programs from the task bar is like flying. Hunting for them everytime all over is like crawling on all fours. Which one do you think is better? The first one, of course! I know where you are headed - to create a shortcut for your favorite oneliner from two great places on the web HERE or HERE, aren't you?

    Remember to visit sqlhtm.com for the latest tweet/Bible verse viewer "Polar Verses" and more tools!

    Chunk-A-File: Two Ways To Split A File In Linux


    Today's generations have it all easy. Even a monkey can take a more awesome picture than you can. Chips have gotten smaller and smaller(computer chips not potato chips!) but better and better. Memory once measured in bytes, and kilobytes, now gets thrown around in gigabytes and terrabytes on the desktop, primitive and bland websites of the pre-y2k era have become dizzyingly attractive, versatile and complex.
    Alright, now back to file-splitting. If my memory serves me right, I don't think there were any native Unix or Linux split commands in the 1980s-90s. One would probably have a "splitting headache" just thinking about how to accomplish file splits and end up having to use third party tools! With the arrival of the native Linux split command in the early 2000s, you could, for example,  now use the [split --number=10 words.out] command for dividing the words.out file into 10 equal chunks by size, and the [split --lines=9917 words.out] command to split it into 10 equal parts by line counts. However, let's explore two home-cooked scripts that I came up with, using [head] and [tail] commands, for splitting a Linux text file, the first to split it equally into 10 equal parts, and the second script to split it to its tenths both using line counts and not file size to accomplish the division.

    PREP WORK - CREATE INPUT DATA FILE

    PREP 1. We'll use a copy of the [/usr/share/dict/words] file as the input file.



    To find the line count to divide the file into 10 parts, first find the total lines, then divide it by 10.


    PREP 2. If you find it [/usr/share/dict/words file] missing, don't worry, we'll create another one[wordfile.out] on the fly.
    We'll create a dummy file and populate it with output from [ls] command run on [/bin], [/usr/bin], [/usr/local/bin] folders, and even add a [.tmp] suffix to every file name for extra safety.



    Good. We see that we have generated 2238 lines for our input file [wordfile.out]. Though we have created two input files [words.out and wordfile.out], we'll use the [words.out] file for this exercise. Now to display the line counts for tenths, use this oneliner.



    The oneliner above calculates the total and the tenths in one loop. Remember the numbers denote line numbers in the input file.

    SCRIPT 1: Script to divide the file into 10 equal parts by line count.

    Ok. Here's the first script[ChunkAFile.bash] that divides the input file into 10 equal parts by line count.



    The image below shows how we list the script name first, then run it, and also display the output files[t01, t02 through t10].

    Let's check the wordcount [l(lines);m(characters);c(bytes)]. Towards the bottom of the image below, also notice that the line count is same[9917] for all 10 files on the first column of the listing. This verifies that our ten output files are equal by line count.



    SCRIPT 2: Script to divide the file to its tenths by line count.

    Let's now examine the second script[ChunkAFileTenth.bash] that divides the input file to its tenths by line count. Here's the script



    Same as above with script1, the image below shows the listing of the script name, then shows it being run, and finally displays the output files[01-tenth.out through 10-tenth.out]. See how their sizes increase with every tenth.

    Finally let's also verify the counts [l(lines);m(characters);c(bytes)]




    THAT'S ALL FOR NOW!

    Okay. We are through with our two scripts! We have come up with new ways to calculate and accomplish how to split a file into ten equal parts, and also to split it to its tenths and verified our results with line counts. Remember we can use the same technic to extend it to split a file to its hundredths[1/100th(1%), 2/100th(2%) through 100/100th(100%) etc.]



    Hopefully, our two little scripts will inspire us to come up with newer and better ways to accomplish similar familiar tasks, all the while looking out to improve stuff at the same time. Remember to visit sqlhtm.com for the latest tweet/Bible verse viewer "Polar Verses" and more tools!

    Of Bible Quiz, Number Crunching, Javascript Tips and Indian Budget.

    Bible Quiz

    It will be close to 3 months tomorrow since I wrote the last blog post[Sig3-Simple Image Gallery For Linux]. While it has always been my top priority to keep this blog and my sqlhtm.com website updated as frequently as possible, it has been a hard thing to do because of where I am in life now - away from home, waiting anxiously to get back to work, family and life. Luckily, what has been a loss of productivity on the blog end, has been a gain for the website since I have added a few more stuff to the website.[Bible Quiz, Aesop Tweets Browser and Aesop Tweets Slide show]. In this post, I just wanted to write about a bunch of interesting things that came my way during the last few weeks.

    1. BIBLE QUIZ


    Do you know there is an interesting little Bible Quiz at sqlhtm.com? This is the latest Html/Javascript online applications there. It is a tiny little starter quiz with just 20 questions from the first few chapters of the first two books of the Bible[Genesis and Exodus]. While you can easily score 100% with single answer questions, you may not do so with a multiple-choice type quiz, at least not easily! Don't complain, things have been smoothed out here. For one thing, you can click on any answer choice of any question any number of times without time or number of attempt restrictions. For another, you just need to press the "Check Answer" button for a hidden answer box with the answer text to slide out for you! I am sure you will find this quiz exciting and informative. Go ahead, take a look and make sure you are a real Bible expert!

    2. NUMBER CRUNCHING


    You know what, I also tripped on the words "1 crore crores" somewhere somehow and didn't know how much it really stood for. So I started to dig a little, crunch some 1's and 0' and ended up with the table I think you will find useful, specially if you are an Indian NRI, since it has a side-by-side comparison of the numbers of the Indian and Western number formats. This table has been heavily inspired by a website I found on my mobile phone, which I could not find again to make a mention of! While I want to thank them I also want to remind you that the numbers are valid for their own currencies and not as conversion of, for example, the US dollar to the Indian rupee or the Indian rupee to the US dollar. In other words, we're doing number analysis here, not currency conversion.


    No of ZeroesAmt in Numbers[India]Amount in Words[Indian]Amt in Numbers[West]Amt in Words[West]
    5 Zeroes1,00,0001 Lakh100,000100,000
    6 Zeroes10,00,00010 Lakhs1,000,0001 Millions
    7 Zeroes1,00,00,0001 Crore=100 Lakhs10,000,00010 Millions
    8 Zeroes10,00,00,00010 Crores=1000 Lakhs100,000,000100 Millions
    9 Zeroes1,00,00,00,000100 Crores=10,000 Lakhs1,000,000,0001 Billions=1,000 Millions
    10 Zeroes10,00,00,00,0001,000 Crores=1,00,000 Lakhs=1 Lakh Lakhs10,000,000,00010 Billions=10,000 Millions
    11 Zeroes1,00,00,00,00,00010,000 Crores=10,00,000 Lakhs=10 Lakh Lakhs100,000,000,000100 Billions=100,000 Millions
    12 Zeroes10,00,00,00,00,0001 Lakh Crores=1,00,000 Crores=1,00,00,000 Lakhs=100 Lakh Lakhs1,000,000,000,0001 Trillion=1000 Billions=1 Million Millions=1,000,000 Millions
    13 Zeroes1,00,00,00,00,00,00010 Lakh Crores=10,00,000 Crores=10,00,00,000 Lakhs=1000 Lakh Lakhs10,000,000,000,00010 Trillion=10,000 Billions=10 Million Millions=10,000,000 Millions
    14 Zeroes10,00,00,00,00,00,0001 Crore Crores=100,00,000 Crores=100 Lakh Crores=100,00,00,000 Lakhs=10,000 Lakh Lakhs100,000,000,000,000100 Trillion=100,000 Billions=100 Million Millions=100,000,000 Millions

    All the numbers crunched and tabled, I finally found the answer to my nagging question: How much really is "1 crore crores"?

    Answer:
    1 crore crores is 100000000000000[14 zeroes after 1], [10,00,00,00,00,00,000 in Indian number format][100,000,000,000,000 in Western number format].
    1 crore crores happens to be Western 100 Trillion[=100,000 Billions][=100 Million Millons][=100,000,000 Millions].
    1 crore crores happens to be Indian 100 Lakh Crores[=10,000 Lakh Lakhs].

    My problem solved, I still have a bigger question: Why should some people in the world have soooooo much more money than all the others???

    I think, in all fairness, income distribution should be more equitable where ever you are, most everyone hovering around the median, give or take, for example, a 10-time disparity between the highest and the lowest.

    To illustrate this, consider a hypothetical situation where the lowest income someone makes is $10/hr [$1600/month][$20,000/yr] and the highest income that anyone can make is capped at $100/hr [$16,000/month][$200,000/yr]. While you may say this kind of thing is hard to implement in the current scheme of things, how can you justify a handful of individuals making  more money than even some small countries? How can you turn a blind eye to how this in turn deprives thousands of unemployed people's opportunity to get employed and support their loved ones? THERE'S GOT TO BE A WAY TO SPREAD THE WEALTH OF THE NATIONS MORE EVENLY AMONG THE PEOPLE. What would be the downside to this kind of approach? What do you think?

    3. JAVASCRIPT TIPS


    Talking of numbers, I also wanted to share 2 functions I used in my Bible quiz, that use numbers in interesting ways.

    Tip 1 [Deep and complex nested If statement]

    I have used the Javascript "IF" statement(short form) before but wasn't sure how nested or complex it could be. The Bible quiz gave me a chance to test out and use a complex nested short form of the "IF" statement.

    Problem

    Every one of the 20 questions in the Bible quiz has multiple-choice answers [a,b,c,d,e,f and g]. I need to convert these into numbers [1,2,3,4,5,6 and 7] so I can use it to retrieve the correct answer from the answers array.

    Solution

    Look at the code below. Receiving one of the letters "a" through "g" as input, this function assigns a corresponding number "1" through "7" as the value of the variable "anscnv" and returns it.

    function ansConv(let) {
    var anscnv = "";
    anscnv = ((let == 'a') ? 1 : ((let == 'b') ? 2 : ((let == 'c') ? 3 : ((let == 'd') ? 4 : ((let == 'e') ? 5 : ((let == 'f') ? 6 : 7))))))
    return anscnv;
    }        
    
    In psuedo code, this nested if means,
    If "let" is equal to "a" then return 1;
    Else if "let" is equal to "b" then return 2;
    Else if "let" is equal to "c" then return 3;
    Else if "let" is equal to "d" then return 4;
    Else if "let" is equal to "e" then return 5;
    Else if "let" is equal to "f" then return 6;
    Else return 7;

    Tip 2 [Ceil is the champ here!]

    Problem

    I have a little show/hide accordion blue answer box on the top of every row [5 questions per row] that opens up when you press the "Check Answer" button and closes when you click on the "Close" button on the top right. That means a total of 4 boxes for 20 questions. The problem is to store
    "1" as the box number in the variable ansboxnum when we click any of the five "Check Answer" buttons on the 1st row, 
    "2" as the box number in the variable ansboxnum when we click any of the five "Check Answer" buttons on the 2nd row, 
    "3" as the box number in the variable ansboxnum when we click any of the five "Check Answer" buttons on the 3rd row and
    "4" as the box number in the variable ansboxnum when we click any of the five "Check Answer" buttons on the 4th row.

    Solution

    There could be many ways to solve this but here is one. Look at the line of code below.

    
    var ansboxnum = (Math.ceil(q / 5) <= 1 ? 1 : Math.ceil(q / 5)); 
    

    Assuming q to be the question number[1 through 20], this is what the code above does. If q divided by 5 rounded up(ceil) is less than or equal to 1 then it stores 1 as the value of the variable "ansboxnum", else it stores q/5 rounded up(ceil) as ansboxnum. This means,
    for q in questions [1,2,3,4,5] it stores 1,
    for q in questions [6,7,8,9,10] it stores 2,
    for q in questions [11,12,13,14,15] it stores 3 and
    for q in questions [16,17,18,19,20] it stores 4, exactly what we need.

        1/5=.2; ceil(.2)<=1 so return 1[questions-1st row/answer box #1]
        2/5=.4; ceil(.4)<=1 so return 1[questions-1st row/answer box #1]
        3/5=.6; ceil(.6)<=1 so return 1[questions-1st row/answer box #1]
        4/5=.8; ceil(.8)<=1 so return 1[questions-1st row/answer box #1]
        5/5=1.0; ceil(1.0)<=1 so return 1[questions-1st row/answer box #1]
    
        6/5=1.2; ceil(1.2)=2 so return 2[questions-2nd row/answer box #2]
        7/5=1.4; ceil(1.4)=2 so return 2[questions-2nd row/answer box #2]
        8/5=1.6; ceil(1.6)=2 so return 2[questions-2nd row/answer box #2]
        9/5=1.8; ceil(1.8)=2 so return 2[questions-2nd row/answer box #2]
        10/5=2.0; ceil(2.0)=2 so return 2[questions-2nd row/answer box #2]
    
        11/5=2.2; ceil(2.2)=3 so return 3[questions-3rd row/answer box #3]
        12/5=2.4; ceil(2.4)=3 so return 3[questions-3rd row/answer box #3]
        13/5=2.6; ceil(2.6)=3 so return 3[questions-3rd row/answer box #3]
        14/5=2.8; ceil(2.8)=3 so return 3[questions-3rd row/answer box #3]
        15/5=3.0; ceil(3.0)=3 so return 3[questions-3rd row/answer box #3]
    
        16/5=3.2; ceil(3.2)=4 so return 4[questions-4th row/answer box #4]
        17/5=3.4; ceil(3.4)=4 so return 4[questions-4th row/answer box #4]
        18/5=3.6; ceil(3.6)=4 so return 4[questions-4th row/answer box #4]
        19/5=3.8; ceil(3.8)=4 so return 4[questions-4th row/answer box #4]
        20/5=4.0; ceil(4.0)=4 so return 4[questions-4th row/answer box #4]
    
    
    Remember this can extend the same way to any number of boxes.
    Nice little way to solve a tiny little problem!

    4. INDIAN BUDGET[2014-15]


    I recently read about the Indian budget in the papers and looked for something that would interest me as an NRI. Sure, yes, I did find some thing interesting! The tax-free baggage allowance for inbound fliers has been upped to Rs.45,000[$748 USD] from Rs.35,000[$582 USD] for the budget year 2014-15. So, travellers, remember to bring that $700 USD in, invest, donate or make good use of it anyway you can!




    Sig3 - Simple Image Gallery For Linux

    "No, no, this isn't a world band shortwave radio, this is Sig3-a tiny Linux image gallery generator!"

    Sig3 is an image gallery generator for Linux. By making thumbnails of common image files in a folder, Sig3 helps you preview them and also open them with your browser where you can do almost anything and everything to them with browser addons and plugins.

    For example, assuming you have installed ColorZilla for Firefox, when you run Sig3 and the image gallery comes up on a Firefox window, you'll also notice ColorZilla's colorpicker icon on the toolbar.[Enable it first with Menu->View->Toolbars->Navigation Toolbar]. Now click on it and move it over the thumbnails on the left panel of the Sig3 image gallery to view the color code of every pixel on every thumbnail! Just click to copy it to the clipboard so you can paste it without memorizing it! How cool! By identifying color codes of an image you can style the image's container or page with a matching or contrasting color in your web projects! This is just a little example. Think of all the image addons, plugins, tools, possibilities!

    I built it on Zorin OS 7/Ubuntu Linux with a shell script and use it often myself. I am sure you'll find tons of uses for it. It's really easy to use, you can either type [sig3] from a terminal, [double-click] on the [sig3.bash] script or [Rightclick] on an image folder and select [sig3.bash] from the [Open With] menu to create and view the image gallery on your browser. Obviously, as mentioned later, you need to create a link called sig3 at /usr/bin and also make sure it is executable before you can do that. I used a Linux user account [jc] with root privileges. You might need root privileges to create the link at /usr/bin. Remember to disregard the square brackets used throughout for highlight and emphasis. Go ahead and read more.






    UPDATE

    Have you tried Sig3 on your laptop/pc yet? Have you at least tried the online demo? If you feel that things are a little slow or that the transitions don't work for you, it probably is the image size and number of images! Try it on a folder with small [clipart type] images and I guarantee that things will work perfectly! I experienced this myself! This is something I have also observed not just here, but also in many online image galleries; the more the number of images in the gallery and the bigger the sizes of images, the longer it takes for the images to load and the transitions to work. Also make sure your browser supports CSS3 transitions by comparing with other image galleries with transitions. Well, that's my humble opinion!


    Fresh New Look! Come Take A Look! Sqlhtm.com Has A Redesigned Home Page!

    Multi-Search3 - The Mighty Little 3-in-1 Web Search Center


    Looking for something on the Internet? You are at the right place. Start from here! Multi-search3! The "type keyword once, search the web with several search engines without retyping" web search center that can also be your wallpaper and music player!


    1.NEED TO SEARCH? [WEB SEARCH CENTER]
    1.Type the keyword ONCE and press [ENTER] or press the [Go] button to search with a random search engine, or
    2.Type the keyword ONCE and press any of 16 search engines WITHOUT RETYPING to search with that search engine.
    Press [HOME] or [CTRL-R] or press [ENTER] on address bar when you get stuck[nonstop horse etc] and press the [BackArrow] button to get the last-used keyword back to continue search.

    2.DONE WITH YOUR SEARCH? [WALLPAPER]
    1.Press the [Home] button or a [Bg] button,
    2.Click on the [top left magnifier image] and
    3.Press [F11] to see a magnificent desktop wallpaper!

    3.NEED MUSIC IN THE BACKGROUND? [MUSIC PLAYER-Some newer browsers only]
    The html5 music player at the bottom of the left box plays ONE mp3 or ogg file. Play the sample track or swap it with your own. Firefox plays ogg but not mp3.

    NEW FEATURES

    1.SEARCH RANDOM: [Go] button
    Search the web with a random search engine from among the 16 on the top of the left box. You can type the keyword first thing as the page loads and press [ENTER] rapidly to search with a random search engine but you could also click on the [Go] button with your mouse. Remember you'd usually click on a search engine of your choice from the top 16 if you don't like to search randomly.
    2.LAST-USED KEYWORD/SEARCH PHRASE: [BackArrow] button
    Multi-search3 autosaves your last-used keyword and displays it across tabs, browser sessions and even reboots! But it works on the same browser only. If you search for "the best blog in the world" [hoping you won't find the one you hate most first on the search results :)] with Chrome, then it is auto-saved in Chrome only, you can't see it on Firefox or Opera. Press the [BackArrow] button to get it back.
    3.HELP: [?] button
    View helpful information.
    4.FILE BROWSER: [Local] button
    View local folders and files from the browser itself! Extremely useful to view html, text, image and pdf files in the browser itself! Be your age and avoid clicking on huge files, exe files or unknown file types though:) This is important.
    5.YEAR CALENDAR WITH LIVE CLOCK: [Cal] button
    View year calendar-2014 with a live clock. You know what, you can actually use it next year, the year after that, and on and on.
    6.THEMES: [ThemeLt & ThemeDk buttons]
    Press one of these buttons repeatedly till you get to a color of your choice for the theme of the search box on the left hand side. Also, if you change a background image and find that the default theme for that bg slot doesn't match the colors of the image, change it at the end of the INPUT tag. For example, to change the default theme of [Bg1], change the [setTheme] statement at the end below with a named[Eg. pink] or hexadecimal[Eg. #00ff00] color to match those of the image.
    Tip!
    After clicking on a [Theme] button, mouseover on it to find the active color.
    Follow the same procedure to change the theme color for the other 5 images if needed.
    7.HTML5 MUSIC PLAYER[Some newer browsers only]
    Use the HTML5 music player to play one track, over and over again! Either listen to the sample here or swap it with your own favorite mp3 or ogg music files. Remember Firefox can play .ogg files but not mp3, Chrome can play both. Look for and change the code below in the Multisearch3.htm file to change the music file.


    BUTTONS & USAGE
    1.[Keyword Input Box] input button
    Type keyword/search phrase in the input box and press [ENTER] or click on a search engine button to start. If you press the [ENTER] key or click on [Go] after typing keyword, results from a random search engine are returned by default. To accept a random keyword suggestion such as "top website" or "top blog", just start Multi-search3 and press [ENTER] or click on [Go]!
    2.[Top left Multi-search3 magnifier logo]
    Click on this to hide the search box on the left and the viewer on the right. Click on this again to show the search box again. Doubleclick not neccesary!
    Press the [HOME] button, a [bg] button, then click on the magnifier image and then press [F11] to change to wallpaper mode for lunch-break etc. Click on the "Click Here To Continue" box to get back and [F11] again to exit [Fullscreen].
    3.[Bg1-6] buttons
    Display one of six background images.
    4.[Home] button
    Get back home.
    5.[Readme] button
    View readme.
    6.[SearchEngineButtons]
    "TYPE KEYWORDS ABOVE ONCE AND SEARCH WITHOUT RETYPING FROM HERE!" group
    Use these to type keywords just once in the box at the top of the page and search with any of the many engines on the yop of the box without retyping.
    "TYPE KEYWORDS AT EVERY SITE!" group
    Use these to go to the search engine page and search there. You'll have to type the keyword at every one of the search engine sites. On Firefox, if you are offline and press a search engine button by mistake, the horse runs forever! On Chrome, it doesn't. If you're using the local button, both act normally.

    REQUIREMENTS

    Multi-search3 runs successfully on these platforms and browsers, feel free to try it on yours! Firefox is the most recommended browser for Multi-search3!
    Zorin7[Ubuntu] Linux
    Chrome 28[Full]
    Firefox18[Full]
    Opera12.16[*zo]


    Windows7
    Chrome32[Full]
    Firefox28
    [Full]
    IE11
    [Full]

    Puppy Lucid5.1 Linux
    Chromium12.0[*pc]
    Firefox13[Full]
    Opera11.60[*po]


    *zo: Everything works on Zorin7/Opera12.16 except that you have to press [ENTER] on the address bar everytime after you use the [LOCAL] button.
    *po: Except two bugs, everything else works on PuppyLucid510/Opera11.60
    -You have to press [ENTER] on the address bar everytime after you use the [LOCAL] button.
    -Music player is visible but won't play.
    *pc: Music player is not visible on PuppyLucid510/Chrome.
    Remember the music player appears or plays in newer browsers only.

    POPUPS
    Enable popups in your browser

    JAVASCRIPT

    Enable javascript in your browser.
    [Tip] You can use this site for instructions.
    http://www.enable-javascript.com/

    DOWNLOAD AND INSTALL

    STEP1
    Download Multisearch3.tar.gz for [Linux-Zorin/Ubuntu] or similar platforms, Multisearch3.zip for [Windows7].
    STEP2
    Uncompress the file somewhere such as "/home/jc" [Ubuntu etc] or "C:\Jc\" [Windows7] to install Multi-search3 at "/home/jc/Multisearch3" or "C:\Jc\Multisearch3".
    STEP3 
    Now you can open Multisearch3.htm with your browser and search the Internet like before!

    UNINSTALL
    Too tired with all the web search? Just do two things to uninstall Multi-search3 from your pc/laptop completely. If you installed Multi-search3 at "/home/jc/Multisearch3" or "C:\Jc\Multisearch3"
    STEP1
    Open the file [Multisearch3RemoveLSAutosaveKeyword.htm] with your browser and press [OK].
    STEP2
    Delete the "/home/jc/Multisearch3" or "C:\Jc\Multisearch3" directory.
    You're all done!

    TIP! USE YOUR PICTURE AS BACKDROP/WALLPAPER!

    Want to see your own pretty face as the background image? Or, maybe your favorite celebrity's face or a Bible verse, or a religious/inspirational image? Easy! Do it in just 5 steps! Just make sure the image has a minimum resolution of 1280x800 or else it may look ugly.
    STEP1
    Copy your image to the Multi-search3 folder.[eg. /home/jc/Multisearch3 or C:\Jc\Multisearch3]
    STEP2
    Open Multisearch3.htm with a text or html editor.
    File Name: [/home/jc/Multisearch3/Multisearch3.htm or C:\Jc\Multisearch3\Multisearch3.htm]
    STEP3
    Change the image below. Put your image there instead.

    STEP4
    Change the image below. Put your image there instead.

    STEP5
    From now on, you should see your image when you start up Multi-search3 or press the [HOME] button! Open Multisearch3.htm [eg. /home/jc/Multisearch3/Multisearch3.htm or C:\Jc\Multisearch3\Multisearch3.htm] with your browser to confirm success. Do you see your image? Great! Simple! Multi-search3!

    NOTE

    1.Magnifier image: Clicking on the magnifier image hides everything and shows a small box. Click on it to display the search box again. A Doubleclick is not necessary.
    2.Fullscreen: Press [F11] for fullscreen and press it again to exit.
    3.[HOME],[Magnifier image],[Bg buttons]: You lose the results page when you press these.
    4.Can't stop horse? Stuck? Press [HOME] generally or press [ENTER] on the address bar[Firefox] and continue if you find yourself in the middle of nowhere.
    5.Dash: The name of this search tool is "Multi-search3", but the name of the file(and directory) is "Multisearch3".
    6.Fullscreen: Can't see everything? Try using Multi-search3 on [F11] Fullscreen or use the browser's zoom controls!
    7.Opera:After using [Local], refresh page by pressing [ENTER] on the address bar and continue using Multi-search3.
    8.Problem: Stubborn "Search Phrase Empty. Type Valid Keyword Text Next Time. Searching With Default For Now" alert.
    Solution: Remove single empty space at the beginning of your keyword/search phrase

    CREDITS

    While it's impossible to divine a software tool out of nothingness, things have gotten so interdependent on one another, very few useful apps can be built on just one technology which means software development requires a lot of web look up for paid and free software, open source tools, syntax check ups, tutorials, code samples, technical install and reference guides, forum suggestions etc. My sincere thanks are due first to God and His mighty ones above and also to online providers of the above and the goodheartedness of so many people everywhere, specially the ones below.
    Background Images-wallpaper.imcphoto.net
    W3c-Valid badge-hestia.venturas.org
    Page-loading horse gif, Html5 music player, Sample mp3,ogg files, Some calendar parts-Some great sites on the web with these free tools!


    FREE LICENCE

    As with most sqlhtm free tools, Multi-search3 is free for your personal use. Please credit the author otherwise.

    BUGS? ERRORS? FEEDBACK?

    You can never predict how some search engines will change their query strings even if you were a prophet! Fortunately, everything here's good as of February 2014. In any case, let me know at Jerome_christopher@yahoo.com

    CREATED BY






    BlogCollage


    Blog Collage - Top Random Posts In No Particular Order

    Mouseover the images for title and comments