-
Notifications
You must be signed in to change notification settings - Fork 0
visigoth/lsxcommand
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
 |  | |||
 |  | |||
 |  | |||
 |  | |||
 |  | |||
Repository files navigation
*************************************
* LSXCommand *
* by Visigoth *
* gandhimail@worldnet.att.net *
* =============== *
* Version: 1.8.1 *
* June 21, 2000 *
* =============== *
* http://floach.pimpin.net/visigoth *
*************************************
Table of Contents
=================
i Quick & Dirty Install
ii Kudos
iii Change Log
I. About LSXCommand
II. How to use LSXCommand
II.1 Internet Searches
II.2 Added RC Commands
New to 1.7.6:
-------------
- CommandBottom/Top/Left/RightBorderSize
New to 1.7.4:
-------------
- Changed CommandClock to CommandTime
- CommandAddExternalsToHistory
New to 1.7.2:
-------------
- CommandOffsetX
- CommandOffsetY
- CommandSearchEngineBrowser
- CommandWinAmpDisappearsOnFocus
- CommandHideOnUnfocus
- CommandTabFileComplete
New to 1.7.1:
-------------
- CommandContextMenuStandardItems
- CommandScrollWinAmpTitle
New to 1.7:
-----------
- CommandNoAutoComplete
- CommandCommaDelimiter
- CommandTransparentEditBox
- CommandBackground
- CommandRPNCalculator
- CommandClock
- CommandClockDisappearsOnFocus
New to 1.5.3:
-------------
- CommandExplorePaths
- CommandSelectAllOnMouseFocus
New to 1.5.1:
-------------
- CommandUnixHistory
New to 1.5:
-----------
- CommandNoWarnOnError
- CommandHistoryMenuEntries
- CommandNewestHistoryItemsOnTop
- CommandContextMenuAboveBox
- CommandContextMenuExecute
- CommandContextMenuOrder
- CommandNoTabMicroComplete
- CommandClearHistoryOnStartup
- CommandAssumeNetAddress
New to LSXCommand:
------------------
- CommandHistoryEntries
- CommandSearchEngineList
- CommandSelectAllOnFocus
- *CommandAlias
II.3 Added !Bang Commands
New to 1.7.7:
-------------
- !CommandToggleTimer
- !CommandSetText
New to 1.7.5:
-------------
- !CommandMove
New to 1.7.3:
-------------
- !CommandBrowseFile
- !CommandBrowseFolder
New to 1.7.1:
-------------
- !Command
- !CommandShow
- !CommandHide
New to 1.5:
-----------
- !CommandClearHistory
- !CommandShowContextMenu
New to LSXCommand:
------------------
- !CommandRescanEngines
II.4 The engines.list File
II.5 Tab-MicroComplete & Context Menu Access
II.6 Calculator Functionality
II.7 Backgrounds & Transparencies
II.8 Clock Settings
II.9 Tab File Completion
II.10 LSXCommandClock module
II.11 AlterScript module
III. Known Bugs / Limitations
III.1 Old history entries remain
III.2 Quoted Names a Problem
IV. Comments / Questions / Flames / Bug Reports
V. Source Code
VI. Source Code License
i. Quick & Dirty Install
========================
i.1 Upgrading from LSCommand
----------------------------
This is a pretty simple thing to do. It's essentially just
replacing a file, but a little more...
1. Copy lsxcommand.dll to your modules directory
2. Replace lscommand.dll with lsxcommand.dll in your step.rc
3. Add the CommandHistoryEntries and CommandSearchEngineList
RC Commands to your step.rc (see below for specifics)
Note: CommandSearchEngineList must be an absolute path, as in
C:\Litestep\engines.list
4. Place the engines.list file to the place pointed to by
CommandSearchEngineList
5. I would really recommend at least browsing through the
section below on Internet Searching with LSXCommand.
6. Adding the CommandSearchEngineList and extracting the
engines.list file is not mandatory - you will simply not have
the ability to use the Internet search feature.
i.2 New to LSXCommand
---------------------
Read limpid's original readme (included with this distribution)
on how to set up LSCommand - from which LSXCommand is based.
Afterwords, go up to "i.1 Upgrading from LSCommand"
ii. Kudos
=========
I just think it's appropriate to officially acknowledge that
limpid did work on the original LSCommand, from which LSXCommand
is based. Thanks limpid!
Credits
-------
A big thanks goes to Takayuki Kawamoto, as he is graciously
translating this readme into Japanese. His translation may be
found at: http://litestep-jp.fsn.net/translation/lsxc.htm
The following people gave me ideas after I released version 1.0:
- Jody Franklin sent in the corrected Letterman Top 10 search engine
- Jonas Sicking can take all the credit for the calculator functions in
LSXCommand, now - he sent in entirely new calculator code which is
much better than the stuff I had.
- TAMUKI-TAM sent in a patch to LSXCommand. I also found out he's
localized LSXCommand to Japanese (that means you can use Japanese
characters with LSXCommand).
- technomancer sent in the code for different border sizes
- Mike Thrall sent in the !bang commands to move LSXCommand
- gizzmo also sent in the idea for switching between clock/amp mode
- gizzmo first sent in the idea for a separate clock module
- Kryten sent in the idea about Browse File and Folder
- Ilkka Nisula sent in the request for multiple base support
- Alasdair sent in a request for negative screen coordinates
- John Kuhn sent in the WinAmp title scrolling idea
- Reiner Meyer sent in the idea to add Clock functionality
- Hugo Ahlenius sent in the idea for RPN mode and the comma
delimiter
- Francis Tyers wanted to be able to turn off AutoComplete for
some reason.
- SXW sent in the basic idea behind AssumeNetAddress and
SelectAllOnFocus
- Jay Kerr sent in the idea behind Aliases / Bindings
- neep sent in a preliminary ideas about a context menu
- tin_omen and Jay Kerr sent in fond thoughts of quoted paths and
complex string parsing :P
- Tomislav Mutak sent in the idea for a command line calculator
- Kevin Werner sent in the idea for bash-like history navigator
- Andrew Hornback sent in a reference to the need for multiple
arguments (I'm working on it!!)
The following people sent in lists of engines (I won't list each
engine - it would just take too long)
- bonez sent in 3 new ones for 1.7.1: UBL, OLGA, and CDNow
All music related... Cool stuff
- Kryten sent in the Merriam-Webster stuff
- bizquik sent in the File Demon engine
- mirul sent in the MS Knowledge Base
- Jason Murray sent in more than 230 engines!!! That's just
overboard, IMO
- Scott Ferguson sent in MetaCrawler
iii. Change Log
===============
Version 1.8.1
-------------
Bug Fixes
`````````
- Fixed AlterScript Run-Twice bug (thanks to Chris Rempel for the fix)
Version 1.8.0
-------------
Bug Fixes
`````````
- Fixed CommandNoWarnOnError
- Fixed locality stuff for international users
Version 1.7.9
-------------
Bug Fixes
`````````
- Fixed DarkStep Compatibility
- Linked against a fresh lsapi.dll, so this *should* fix problems
people had loading LSXCommand 1.7.8. Drop me a line if not
Version 1.7.8
-------------
Documentation Changes
`````````````````````
- Calculator documentation entirely revamped to reflect all the new
and cool features - CHECK IT OUT!
- Added lsxcommand.rc to the package - just a list of all the
RC commands and !Bang commands.
- Documentation reflects new location of the Japanese translation
Bug Fixes
`````````
- AutoComplete bug is fixed! The fix *might* make AutoComplete work
not *exactly* as planned, but at least it won't crash any more.
New Features
````````````
- New Timer management
- Entirely new calculator code (Mad props to Jonas Sicking for coding
this stuff - credit entirely belongs to him for the calculator now)
Version 1.7.7
-------------
Documentation Changes
`````````````````````
- It turns out Mr. Kawamoto isn't a Professor after all ("merely
a student" to put it in his words). Well, at least he's a
Ph. D. candidate :)
- Kudos section fixed & updated - check out the new entry.
- Updated CommandClock section to include new !Bangs supported
by LSXCommandClock
Bug Fixes
`````````
- Fixed CommandNoWarnOnError bug when entering a path
- !CommandMove now automatically calls !FocusCommand *if*
it was called without any arguments (ie you want it to move to
the current mouse position)
- Aliases now properly parse out stuff like the following:
*CommandAlias IE "C:\program files\internet explorer\..."
Thanks to TAMUKI-TAM for sending the patch to this bug.
New Features
````````````
- LSXCommand is now offered in Japanese.. TAMUKI-TAM is the guy
who localized LSXCommand to use Japanese characters and
Mr. Kawamoto, as I said before, has translated the readme to
Japanese - thanks again!
- Added following !Bang commands (see section II.3 for details):
* !CommandToggleTimer / !CommandClockToggleTimer
* !CommandSetText
Version 1.7.6
-------------
Documentation Changes
`````````````````````
- Kudos section has a few new entries - check them out!
- CommandBorderSize documentation added
Bug Fixes
`````````
- Fixed !CommandMove bug
- Fixed Working Directory problems
New Features
````````````
- When !CommandMove/!CommandClockMove is called without
parameters, it moves to the current cursor position. I would
recommend using CommandHideOnUnfocus with this.
Also, if you !CommandMove has the parameter "home", it moves
back to the original position found in step.rc
- Added following RC Commands:
* Command + Bottom | Top | Left | Right + BorderSize
(ie. CommandTopBorderSize, CommandLeftBorderSize...)
Notes
`````
Be *sure* to read the CommandBorderSize documentation if you
are interested in using CommandBottom/Top/Left/RightBorderSize
Version 1.7.5
-------------
More bug fixes; new features
Documentation Changes
`````````````````````
- Fixed Ilkka Nisula's name.
- Updated Search Engine list documentation to reflect
"categories"
- Updated Section II.1 to note that new engines are only added
to the master search engine list available on my web site.
Bug Fixes
`````````
- Fixed !CommandBrowse* crashes
New Features
````````````
- Added Mike Thrall's code for moving LSXCommand via a !Bang
(see below)
- Added category feature to Search Engine list (see the end of
section II.1 for details)
- Added following !Bang Commands:
* !CommandMove / !CommandClockMove
- Added following Search Engines (see section II.1 for details)
* DVDExpress
* CodeGuru
* ZDNet HotFiles
Version 1.7.4
-------------
Bug fixes, bug fixes, bug fixes...
Documentation Changes
`````````````````````
- Documentation now reflects change from CommandClock to
CommandTime
Bug Fixes
`````````
- Fixed AlterScript to work like Killarny's script.dll
Meaning, understanding the LoadScript RC Commands
- Fixed !CommandBrowseFile & !CommandBrowseFolder crashing bugs
- Fixed CommandCommaDelimiter problems (stupid infinite loops)
- Fixed the weird LSXCommand/CommandClock problem: if you have
the *original* LSXCommand with a CommandClock entry, then
you must change this to CommandTime (see Notes for more info)
New Features
````````````
- Added switch WinAmp/Clock mode on mouse click in
LSXCommandClock (not in LSXCommand).
- Added following RC Commands:
* CommandAddExternalsToHistory
- Added following search engines:
* AudioFindMP3 (MP3 search engine - audiofind.com)
* PalaVista (MP3 metacrawler - palavista.com)
Notes
`````
It turns out the problem lies in LSAPI, and not LSXCommand or
LSXCommandClock. In any case, the original CommandClock RC
Command (before there ever was a LSXCommandClock) now is named
CommandTime. The LSXCommandClock RC Command "CommandClockString"
is still the same. So, if you have the original LSXCommand still
with a CommandClock entry, change it to CommandTime. NOTE:
CommandClockDisappearsOnFocus is still the same.
Example: CommandClock "#c" --> CommandTime "#c"
Version 1.7.3
-------------
A couple of features, bug fixes
Bug Fixes
`````````
- Fixed File AutoComplete junk characters error
New Features
````````````
- Separate AlterScript module (see section II.11 for details)
- Separate clock module (see section II.10 for details)
- Added following !Bang Commands:
* !CommandBrowseFile
* !CommandBrowseFolder
Version 1.7.2
-------------
Mostly bug fixes & two feature additions
Documentation Changes
`````````````````````
- Added section II.9 for Tab File Completion feature
Bug Fixes
`````````
- Fixed !CommandHide & !CommandShow problems
- Fixed CommandHiddenOnStart problems (again)
- Fixed Paste menu item problems
New Features
````````````
- New positioning system (see Notes below)
- Added file name tab completion like Re5ource's popups
(see section II.9)
- Added following RC Commands (see section II.2 for details)
* CommandSearchEngineBrowser
* CommandWinAmpDisappearsOnFocus
* CommandHideOnUnfocus
* CommandTabFileComplete
* CommandOffsetX
* CommandOffsetY
Notes
`````
In the new positioning system, CommandOffsetX/Y are used to
decide from where LSXCommand should compute its position. The
following table lists the combinations of CommandOffsetX/Y and
CommandX/Y and what they do:
CommandOffsetX/Y:
0 - Reference from Left/Top (default)
1 - Reference from Center of Horizontal/Vertical
2 - Reference from Right/Bottom
CommandX/Y:
These values now tell how many pixels away from the point
described by CommandOffsetX/Y LSXCommand should be.
For instance, using the following values will have LSXCommand
be placed 2 pixels to the left of horizontal center, at the very
bottom of the screen:
CommandOffsetX 1
CommandOffsetY 2
CommandX -2
CommandY -14 (Same as negative of CommandHeight)
If you leave your settings the way they are, they will work as
before.
To turn on file name tab completion, be sure to turn *on*
CommandTabFileComplete and CommandNoTabMicroComplete. I know
this is a bit clunky, but deal with it please... :) I didn't
test it too extensively, but it seems to be working quite
well on my system.. Of course, we know what that means...
Version 1.7.1
-------------
Just bug fixes and a few features
Documentation Changes
`````````````````````
- Added number conversion information to Calculator
Functionality section (section II.6)
- Added multiple number bases information to Calculator
Functionality section (section II.6)
- Changed the original lscommand's readme file. Many
people asked about why CommandHideOnStart doesn't work.
This is because there is no such thing.. it is
CommandHiddenOnStart. That solves that mess.
Bug Fixes
`````````
- Fixed Comma Delimiter problem(s)
- Caught up with the Kudos section of this readme. :)
- Fixed bug with CommandContextMenuOrder
- Fixed Clock that never came back after a command
- Fixed any problems with CommandHiddenOnStart with
CommandBackground
New Features
````````````
- Calculator supports limited number converion
- Calculator supports binary & hexadecimal numbers (see section
II.6)
- You can now stop any of the History / Alias / Search Engine
submenus from coming up by setting them to 9 instead of 0, 1,
or 2.
- Added following RC Commands (see section II.2 for details)
* CommandScrollWinAmpTitle
* CommandContextMenuStandardItems
- Added following !Bang Commands (see section II.3 for details)
* !Command
* !CommandShow
* !CommandHide
- Added following search engines (see section II.1 for details)
* OLGA - On-Line Guitar Archive
* UBL - Ultimate Band List
* CDNow - Search for CDs
Notes
`````
CommandScrollWinAmpTitle scrolls the current WinAmp title *if*
WinAmp's "Scroll Song Title in Windows Taskbar" preference is
on. Also, you *can* have a clock and the WinAmp scroller - but
the WinAmp scroller takes precedence. Therefore, the WinAmp
scroller will show when there is a WinAmp to scroll. If not,
LSXCommand will show a clock (if the clock setting is specified)
Version 1.7
-----------
New features...
Documentation Changes
`````````````````````
NOTE: This section notifies you about changes to existing
documentation. New documentation is not listed here. Pay
close attention to Section II, since all major features have
their own documentation added under this section.
- Added note about RPN functionality to Calculator section II.6
- Added shameless plug <g> for the full engines.list at my web
site in section II.4.
Bug Fixes
`````````
- Proper handling of border sizes (retheming may be required)
New Features
````````````
- Added following RC Commands (see section II.2 for details)
* CommandNoAutoComplete
* CommandCommaDelimiter
* CommandTransparentEditBox
* CommandBackground
* CommandRPNCalculator
* CommandClock
* CommandClockDisappearsOnFocus
Notes
`````
While doing some theming of LSXCommand myself, I noticed that
when I set BorderSize to 0, it still had a border around it.
I fixed that kind of stuff in this revision. NOTE: Some re-
theming may be required.
If you set CommandTransparentEditBox on for whatever reason, you
*WILL* see flashing while typing in the command box. No doubt.
I strongly suggest reading section II.2 for more about
transparency and backgrounds.
Version 1.5.3
-------------
Just a couple of bug fixes in the new command parser from 1.5.2
and another feature.
Bug Fixes
`````````
- Fixed the junk characters being launched as an Internet
Address when CommandAssumeNetAddress is turned on.
- Fixed history saving commands that were quoted paths alone
multiple times
- Fixed multiple explorer windows
New Features
````````````
- Added following RC Commands (see section II.2 for details)
* CommandSelectAllOnMouseFocus
* CommandExplorePaths
Version 1.5.2
-------------
More bug fixes - most related to string parsing and memory
allocation. Programmers: forgive me! I didn't check all the
NULL pointers I was supposed to! I only hope I caught all of
them in this release...
Quote of the release: What was I smoking when I released 1.5.1
anyway?
Bug Fixes
`````````
- Fixed Calculator () crashing bug
- Fixed multiple history menu entries of same command
- Fixed times when history menu wouldn't do anything
- Fixed No-Argument searching (not possible now)
- Fixed case when CommandNewestHistoryItemsOnTop was *not* on
- Fixed LSXCommand hiding / showing itself on inappropriate
commands from the context menu
- Fixed command parsing by rewriting code - woopee!!
New Features
````````````
- Totally re-written command parser (This is also a bug fix)
- Added following engines:
* IMDB - Search for movies by title at imdb.com
Notes
`````
This section will just comment on the new command parser, since
it's not big enough for it's own section.
The new command parser allows for anything to be quoted.
However, do NOT try and use quoted names for aliases and search
engines in your configuration files yet - they just aren't
implemented. I want this release to entirely stabilize before
adding other features and moving on to other stuff for a while.
Anyway, back to the parser. Before, things like this would not
run: (Let's say you have an alias of: nt notepad)
"nt" c:\litestep\step.rc <ENTER>
"nt c:\litestep\step.rc" <ENTER>
The first, now, *will* run. The second *will NOT* run. This
should be obvious: the first explicitly says nt is a command
of its own. The second says the whole line is a command of its
own. Since there is no command that fits this at all, nothing
will happen.
Also, quoted paths are now allowed. So, you can now use
"c:\program files\something"
to launch files.
LSXCommand now operates in the following fashion when given a
command:
- Try against Aliases
- See if it fits !Bang / Calculator / Search
- If not, try to execute the command and parsed arguments
- If this does not work, but the command *was* a path,
then try the whole line alone. If it wasn't a path,
your AssumeNetAddress setting kicks in and decides whether
or not to launch your browser.
Version 1.5.1
-------------
A QBF: Quick Bug Fix and one feature
Bug Fixes
`````````
- Fixed all one word commands. Seemed to be really broken, eh?
New Features
````````````
- Added following RC Commands (see Section II.2 for details)
* CommandUnixHistory
Version 1.5
-----------
Features, features, features:
Documentation Changes
`````````````````````
NOTE: This section only relates to changes made to documentation
that existed prior to the current version.
- Added information about how to make engine entries for engines
using POST method instead of GET. (See section II.4)
Bug Fixes
`````````
- Fixed memory leak on every autocomplete
- Fixed bug where people couldn't edit their engines.list
while LSXCommand was loaded.
- Fixed bug where, if you don't have CommandClearOnHide or
CommandNoClearOnCommand *was* on, the history wasn't in the
correct place the next time you used lsxcommand. (Didn't
catch that, did ya?!)
- Fixed bug where quoted paths / search phrases were ignored.
New Features
````````````
- Version Resource added for completeness.
- Calculator Functionality (see Section II.6 for details)
- Tab-MicroComplete (see Section II.5 for details
- Context Menu Command Access (see Section II.5 for details)
- Quoted Paths and Quoted Search Phrases
- Added following RC Commands: (see Section II.2 for details)
* CommandNoWarnOnError
* CommandHistoryMenuEntries
* CommandNewestHistoryItemsOnTop
* CommandContextMenuAboveBox
* CommandContextMenuExecute
* CommandContextMenuOrder
* CommandClearHistoryOnStartup
* CommandAssumeNetAddress
- Added following !Bang Commands: (see Section II.3 for details)
* !CommandClearHistory
* !CommandShowContextMenu
- Added following engines:
* BigBook - Find businesses in all 50 US states
* BarnesAndNoble - Find books at Barnes & Nobles
* MediaFindMP3 - Use Mediafind for MP3 searching
* Reel - Find movies by title
* Archieplex - Huge Archie (FTP) database
* Filez - Search with Filez.com
* Shareware - C|Net Shareware.com
* NorthernLight - A real search engine.. :)
* OpenText - Another search engine
* InfoSpace - ''
* GoTo - ''
* Pathfinder - ''
* MetaCrawler - ''
* Top5 - Top 5% of all web sites (so they say..)
* A2Z - The Lycos A2Z guide
* AskJeeves - The famous ask jeeves
* MerckMan - The Merck Manual
* APWire - The Associated Press Wire
* WhoWhere - E-Mail search
* LibraryOfCongress - Search *the* Library
* Finger - finger user@hostname
* NSLookup - NSLookup...
* LettermanTop10 - Search Dave Letterman's Top Ten
* Anonymizer - Anonymize yourself!
Version 1.1.1
-------------
Just one bug fix, but important:
New Features
````````````
- Added following search "engines":
* Dictionary - searches Merriam-Webster's Dictionary
* Thesaurus - searches Merriam-Webster's Thesaurus
* OTH - Archie search for MP3s, I think...
* FOLDOC - Free On-Line Dict. Of Computing
* Quote - Quote.Com stock quotes
* FileDemon - Software search of major sites
Bug Fixes
`````````
- Bug where you couldn't edit your step.rc as long as
lsxcommand.dll was loaded.
- Same bug for engines.list
Version 1.1
-----------
A few bug fixes and a little bit more...
New Features
````````````
- Added Select All on Focus by specifying
CommandSelectAllOnFocus in the step.rc
- Added 'Aliasing' - this allows you to "bind" a single word to
a lengthy command. For instance, you can specify 'step.rc'
to be "notepad c:\litestep\step.rc"
- Added following search "engines":
* UPS (?UPS 1Z99999999) - UPS shipment tracking
* FedEx (?FedEx 90923012) - FedEx shipment tracking
* Airborne (?Airborne 21039) - Airborne Express tracking
Bug Fixes
`````````
- Fixed bug where number of entries reported was wrong
(this is an internal code fix - just good bookkeeping)
- Added the engines.list file to the archive
I. About LSXCommand
===================
LSXCommand is a greatly extended version of LSCommand (by limpid).
A quick list of the enhancements are:
* Entirely rewritten History code (sorry limpid!)
* Resizable History
* History stored in Modules.ini (faster, makes more sense to me)
* AutoComplete
* Internet Search
* Aliasing - or Binding, if you like
* Calculator Functionality (Regular & RPN!)
* Context Menu (Right-Click) Access
* Backgrounds & Transparency
* A Clock with Date functionality as well
* A separate clock module
* A 'replacement' for Killarny's script.dll for use with
LSXCommand
* Heck, it can even use WinAmp's scrolling title feature...
* A few speed tweaks
II. How to use LSXCommand
=========================
LSXCommand is used in the exact same fashion as LSCommand. The
only differences now are: 1. You have more (or less) history to
deal with (depending on your settings) 2. AutoComplete works much
like that of Internet Explorer / Netscape and 3. You can now
search the net directly from LSXCommand!
II.1 Internet Searches
------------------------
Both Netscape and Internet Explorer support a small feature where
you can type a question mark (?) and then a keyword, and they will
search the net for you. However, you could never tell which
engine Netscape was going to use (Netcenter had deals with all the
major engines) and IE always seemed a bit screwy to me. Anyway,
LSXCommand now has this functionality - and you always know which
engine you are searching with!
For instance, to search for "Litestep" with LSXCommand, enter the
following and hit <Return>:
? Litestep
The above will search your default search engine for the phrase
Litestep. (See the section below about the engines.list file to
set up your default engine, and add more!).
To use a specific search engine with your query, you must simply
insert an engine ID after the question mark, like this (Note the
lack of a space after the question mark - it's important!):
?Altavista Litestep
This searches AltaVista for the phrase Litestep.
The following is the list of engines that come preconfigured in
the sample engines.list (Note - unless otherwise stated, these are
configured to the default options these engines use. Another note
- engine names are not case sensitive, I just wrote them the
proper way in the examples):
* Default: Yahoo!
* Yahoo! (?Yahoo quake) [Note exclusion of !]
* AltaVista (?AltaVista phrase I can't find anywhere)
* Lycos (?Lycos insane asylum)
* Excite (?Excite dilbert)
* InfoSeek (?InfoSeek obey your thirst)
* Google! (?Google linux) [Note exclusion of ! again]
* HotBot (?HotBot nothing in particular)
* DejaNews (?DejaNews good compilers)
* LycosMP3 (?LycosMP3 Offspring Gone Away)
* ScourMP3 (?ScourMP3 Robert Miles Children)
* Lyrics (?Lyrics I wish I was a little bit taller)
* LyricsByTitle (?Lyrics I Wish)
* Slashdot (?Slashdot Quest for Cool Cases)
* Floach (?Floach lsxcommand)
* MSDN (?MSDN I didn't know that API call existed)
* Amazon (?Amazon Barbarians Led by Bill Gates)
* SoftSeek (?SoftSeek UltraEdit)
* Hardware (?Hardware AMD K7)
* CMA (?CMA phrase in that article I can't find)
* Patent (?Patent US05731339__)
Added as of 1.1:
* UPS (?UPS 1Z99999999999)
* FedEx (?FedEx 1092831023)
* Airborne (?Airborne 123934309)
Added as of 1.5: (sorry, I gave up on examples - too many!)
* BigBook
* BarnesAndNoble
* MediaFindMP3
* Reel
* Archieplex
* Filez
* Shareware
* NorthernLight
* OpenText
* InfoSpace
* GoTo
* Pathfinder
* MetaCrawler
* Top5
* A2Z
* AskJeeves
* MerckMan
* APWire
* WhoWhere
* LibraryOfCongress
* Finger
* NSLookup
* LettermanTop10
* Anonymizer
Just a couple of notes:
- LycosMP3 and ScourMP3 are customized versions of Lycos
(lycos.com) and Scour (www.scour.net) to search strictly for
MP3's.
- Lyrics (by itself) searches www.lyrics.ch for the lyrics
themselves. LyricsByTitle searches for titles of songs
available on the Lyrics server.
- Hardware searches Tom's Hardware - a good site for hardware
reviews.
- CMA searches ZDNet's Computer Magazine Archive - which is cool
if you don't remember where you saw an article.
- Patent looks up the specified patent number on IBM's Patent
server - www.patents.ibm.com
- The last three are all shipment tracking searches - UPS, FedEx
or Airborne Express
For more information about adding, removing, or changing engines
in the list file, see the section below.
PLEASE NOTE: LSXCommand's default search engine list is quite
large; however, there are tons of other good search engines out
there. After version 1.5, all engines which are said to be Added
in the Change Log (above) are actually added to the master
LSXCommand Search Engines list available at my web site:
http://floach.pimpin.net/visigoth/litestep/lsxcommand-engines.list
CATEGORY FUNCTIONALITY
Before I start on the category functionality, I have to say the
following: your default search engine (identified by the
"Default ..." line in your search engines list) should be left
alone on a line by itself. Try and make it the first non-comment
line in your engines list.
Just one more note: When a search engine is in a category, you
access it *THE SAME WAY* when typing a search command.
(ie. even if "Amazon" is in the "Books" category, you still use it
by typing "?Amazon <book>")
That said, we can get to the meat of the subject. Categories are
the same as sub-menus in the popup menu. The only difference
between search engines in a category and not in a category is the
fact that one is in a sub-menu (such as "Books ->" or "MP3 ->") and
the other is in the root "Search Engines ->" sub-menu.
To create a category in your search engines list, all you have to
do is type the name of the category and then an open brace ( "{" ).
This must be on its own line. Now you can place as many search
engines as you like in that category, each one on its own line just
as in the original engines.list. To close a category, simply place
a closing brace ( "}" ) on its own line.
You can also have spaces in your category names (NOTE: This doesn't
mean you can have spaces in your search engine names. That has
not been implemented). To do this, enclose the category name in
quotes, such as "Music and Movies". Also, you can have a keyboard
accelerator assigned to a sub-menu. (You know how the File menu
and the Edit menu have underlines under the 'F' and 'E'? You can
have that too - those are called keyboard accelerators). To have
a keyboard accelerator for a particular letter in the category
name, place an ampersand ( "&" ) in front of the letter. For
instance, "Music and &Movies". If you want to have an ampersand
inside the name of a category, put two ampersands in a row. As an
example, "Music && Movies" will have an ampersand between "Music"
and "Movies" but no keyboard accelerator. "Music && &Movies" will
have both an ampersand and an accelerator.
You are allowed to have sub-categories ad-infinitum (meaning, you
can make sub-menus on the sub-menus and just keep going as far as
you like. You could do something like Computers->Software->
Download Libraries->.
For human readability, you can also have white space in front of
both search engine lines and category lines.
For an example, see the included engines.list file in this
distribution of LSXCommand.
II.2 Added RC Commands
----------------------
NOTE: Please see original LSCommand readme for previous
RC Commands.
CommandBottom/Top/Left/RightBorderSize
``````````````````````````````````````
Description: These four commands specify separate borders for
each side of the edit box. The default for all of them is 2.
You can only use these when CommandBorderSize is *not*
soecified.
Example:
CommandTopBorderSize 4
CommandBottomBorderSize 4
CommandRightBorderSize 0
This will set a 4 pixel border on top and bottom, a 2 pixel
border on the left (default), and no border on the right.
CommandBorderSize
`````````````````
Description: Sets the border size around the edit box. This
sets the border on each side to the same number.
If you want to have different sized borders on each side, use
CommandTopBorderSize, CommandBottomBorderSize, CommandLeft...,
and CommandRight... (see above)
If CommandBorderSize is specified, Command<SIDE>BorderSize
commands are ignored.
Default for all these commands is 2.
CommandAddExternalsToHistory
````````````````````````````
Description: If this is on, LSXCommand will add any commands
launched with the !Command !Bang command to the history. Since
I've been using AlterScript with this a lot, it became
annoying to have all of AlterScript's commands end up in
LSXCommand's history. NOTE: This is an LSXCommand RC Command
(not for AlterScript). It affects any command run with !Command
and not just AlterScript's.
CommandSearchEngineBrowser
``````````````````````````
Description: Path to the browser to be used with search engines.
If not specified, LSXCommand uses the default browser on your
system.
Example: CommandSearchEngineBrowser c:\opera\opera.exe
CommandWinAmpDisappearsOnFocus
``````````````````````````````
Description: Just like CommandClockDisappearsOnFocus, but for
the WinAmp scrolling feature.
CommandTabFileComplete
``````````````````````
Description: Enables the completion of file names by using the
tab key. NOTE: You will want to also turn on the
CommandNoTabMicroComplete RC Command
CommandOffsetX/Y
````````````````
Description: This value determines which point on the screen
LSXCommand should use as a reference for the CommandX/Y values.
The default is the upper left corner.
0 - Left / Top
1 - Horizontal / Vertical Center
2 - Right / Bottom
Examples: CommandOffsetX 0 CommandOffsetY 2
CommandHideOnUnfocus
````````````````````
Description: Hides LSXCommand when it loses keyboard focus.
This can be used to hide LSXCommand after it runs an app.
Example: CommandHideOnUnfocus
CommandContextMenuStandardItems
```````````````````````````````
Description: This item does two things. It first turns on the
standard menu items: Cut, Copy & Paste. Second, it tells where
to put the standard items, above or below the LSXCommand
specific menus.
Example: CommandContextMenuStandardItems 1 ; Above
CommandContextMenuStandardItems 2 ; Below
CommandContextMenuStandardItems 0 ; Off (Default)
CommandScrollWinAmpTitle
````````````````````````
Description: If on, this setting takes WinAmp's scrolling title
and displays it in LSXCommand. Note that WinAmp's scroll song
title preference must be on for this to happen. A neat trick
with this is to have both a clock and a WinAmp scroller. The
WinAmp scroller will show when WinAmp is running. If not, the
clock will show. (Note that for the clock to show, you must use
the CommandTime RC Command described below).
Example: CommandScrollWinAmpTitle
CommandNoAutoComplete
`````````````````````
Description: Turns *off* AutoComplete. Someone asked for it, so
I coded it :).
Example: CommandNoAutoComplete
CommandCommaDelimiter
`````````````````````
Description: Some Eurpoean countries use commas as decimal
delimiters, so this changes decimals from periods to commas.
Example: CommandCommaDelimiter
CommandRPNCalculator
````````````````````
Description: Makes the calculator an RPN calculator. If you
don't know what this is, don't use it! You'll only confuse
yourself. Others call RPN "Postfix" notation. If you want
to learn more, obtain a Hewlett-Packard RPN calculator (the
48/49 series are especially nice, IMO :).
NOTE: This does not make the history a stack! It merely
means that you can write your expressions as postfix and it
will be calculated correctly. For instance, typing:
5 <ENTER> 2 <ENTER> + <ENTER>
will NOT work. You must type "=5 2 +" to get the answer
Example: CommandRPNCalculator
CommandBackground
`````````````````
Description: Path to your background image. If this is not an
absolute path, LSXCommand looks in your images directory. If
this option is not specified, the background & border colors
are used (see the original lscommand readme for info on these
colors).
NOTE: See section II.7 for more about backgrounds and their
relationship to transparency.
Example: CommandBackground "lsxcommand_background.bmp"
CommandTransparentEditBox
`````````````````````````
Description: Makes the area in which you type transparent to the
background. If this option is not specified, the background
image shows through. If there is no background, the background
color is used (see the original lscommand readme for info on
these colors).
NOTE: See section II.7 for more about backgrounds and
transparency.
Example: CommandTransparentEditBox
CommandTime
```````````
Description: Format string that tells LSXCommand how you want
your time & date to look.
NOTE: See section II.8 on different format strings and what
effect they have. It's quite long, but worth it.
Example: CommandTime "%#c"
NOTE: The above results in something like "Monday, June 14, 1999
18:00:30" depending on the real date and time.
CommandClockDisappearsOnFocus
`````````````````````````````
Description: If you want the clock to automatically disappear
when you click in LSXCommand, set this on. Otherwise, the
clock will "pause" at the current time/date. This makes it
easier for you to copy/paste the time & date into any app.
Example: CommandClockDisappearsOnFocus
CommandSelectAllOnMouseFocus
````````````````````````````
Description: Just like CommandSelectAllOnFocus, just that it
only works when clicking to focus LSXCommand. The reason
these are two separate options is for people like me: I like to
be able to just click once to put the cursor where I want it -
not select the entire command. But, some people like the
explorer way of doing things better, so I added it.
Example: CommandSelectAllOnMouseFocus ; More explorer functions
CommandExplorePaths
```````````````````
Description: If enabled, any directory path you enter into
LSXCommand will open a treed explorer window, instead of the
standard folder window.
Example: CommandExplorePaths ; Gimme a Tree!
CommandUnixHistory
``````````````````
Description: The most popular UNIX shell (bash) has the inverse
history navigation: Up for previous, down for next. You can
use this system with this setting.
Default: Down is previous; Up is next
Example: CommandUnixHistory ; I like my old command line
CommandNoWarnOnError
````````````````````
Description: If there is an error (for instance, if the command
you entered is invalid or the calculator couldn't evaluate the
expression you entered), you will get an error message. This,
when turned on, will suppress it.
Default: Off (meaning - you get the error message)
Example: CommandNoWarnOnError ; Stops error messages
CommandHistoryMenuEntries
`````````````````````````
Description: Sets the maximum number of history entries available
from the context menu.
Default: The max number of history entries
Example: CommandHistoryMenuEntries 10 ; 10 Entries available
CommandNewestHistoryItemsOnTop
``````````````````````````````
Description: This setting places newer history items at the top
of the menu, instead of at the bottom.
Default: Newest items go on the bottom
Example: CommandNewestItemsOnTop ; Puts newest stuff on top
CommandContextMenuAboveBox
``````````````````````````
Description: If you have your LSXCommand window at the bottom of
the screen, you will want to turn this on. If at the top, leave
this off. This sets where the context menu will appear - above
or below the LSXCommand box.
Default: Context Menu appears below box
Example: CommandContextMenuAboveBox ; Menu appears above box
CommandContextMenuExecute
`````````````````````````
Description: Tells LSXCommand to execute a selection from the
context menu instead of copying its data to the LSXCommand box.
NOTE: Since the point of search engines is to have you enter a
search phrase, it is not possible to have search engines
execute.
Default: Copies data (ie history / alias entry) to the box.
Example: CommandContextMenuExecute ; Execute a command, no copy
CommandContextMenuOrder
```````````````````````
Description: Specifies which order each submenu should appear.
For instance, you can have History, Alias, then Search Engines
or Alias, History, Search Engines, or...
The setting is 3 numbers: 0, 1, and 2. The combination of
these numbers sets in which order each submenu appears. The
first number is the position of the History submenu. The
second is the Alias submenu. And the last is the Search
Engines submenu.
Default: 012
Example: So, to have a menu where Search Engines are at the top,
Aliases next and the History at the bottom, you would specify:
CommandContextMenuOrder 210
CommandNoTabMicroComplete
````````````````````````
Description: Stops Tab-MicroCompletes from taking place. See
section II.5 on more about Tab-MicroComplete
Default: Tab-MicroComplete is on
Example: CommandNoTabMicroComplete ; I don't like fancy stuff
CommandClearHistoryOnStartup
````````````````````````````
Description: Clears the history on startup. NOTE: You *will*
lose the history in modules.ini - not only the history in
memory.
Default: Keeps last session's history
Example: CommandClearHistoryOnStartup
CommandAssumeNetAddress
```````````````````````
Description: If a command just doesn't cut it, you can have it
start your browser with the address.
Default: You will get an error message - this is suppressable by
CommandNoWarnOnError
Example: CommandAssumeNetAddress
Example (in lsxcommand): home
If home is not found in your path, your browser is loaded with
http://home (which usually gets changed to http://home.com or
http://www.home.com)
CommandHistoryEntries
`````````````````````
Description: Sets number of history entries of which to keep
track.
Default: 10
Note: I haven't really stress-tested LSXCommand, so I don't know
how well it scales up, but it shouldn't be too taxing even at
somewhere around 50 entries. But I think that's a bit much
anyway...
Example: CommandHistoryEntries 20
CommandSearchEngineList
```````````````````````
Description: The path to your engines.list - the list of
search engines to use with LSXCommand.
Default: -
Note: If none is supplied, or the file is unavailable, the
search feature will be unavailable.
IMPORTANT: This must be an absolute path.
Example: CommandSearchEngineList C:\Litestep\engines.list
CommandSelectAllOnFocus
```````````````````````
Description: Selects everything in the command box on focus
Default: True
Example: CommandSelectAllOnFocus ; Selects all on lsxcommand
*CommandAlias
`````````````
Description: Aliases (or Binds) a phrase to another command.
Default: -
Example: *CommandAlias step notepad c:\litestep\step.rc
II.3 Added !Bang Commands
-------------------------
NOTE: See Original LSCommand readme for previous !Bang Commands
!CommandSetText
```````````````
Description: This !Bang sets the text in LSXCommand to its
arguments. This makes for some really neat stuff (for instance,
a shortcut that pops up LSXCommand with a question mark and a
space already in it ready for an argument to search with). Note
that this !Bang command does not show LSXCommand if it is hidden.
Example: !SetText "?Altavista "
!CommandToggleTimer
```````````````````
Description: Toggles the current timer. If you use this, the
WinAmp timer no longer takes precedence over the clock. You have
to call this !Bang again for the WinAmp scroller to appear.
!CommandMove
````````````
Description: Moves the LSXCommand window by the amount specified
in the arguments. The amount is a pair of numbers, separated by
a space, specifying the number of pixels to move left/right or
up/down. If there is only one number, it is assumed to be
horizontal movement.
!CommandMove 0 100 ; moves it 100 pixels down
When !CommandMove is called without parameters, it moves to the
current mouse cursor position. If !CommandMove is called with
"home" as its parameter, it moves back to the original position
it received from step.rc
!CommandBrowseFile
``````````````````
Description: Brings up an Open Dialog Box to browse for a file
for LSXCommand to open. It's just the same as typing in the
file's name. NOTE: You can send an argument to this !Bang
command to specify the filter for the open box. For instance,
to see just Text Files, you might do this:
!CommandBrowseFile All Text Files (*.txt, *.ini)|*.txt;*.ini
!CommandBrowseFolder
````````````````````
Description: Brings up a folder selection dialog. You can
select a folder to browse to. There are no arguments for this
!Bang command.
!CommandShow
````````````
Description: Just shows LSXCommand. NOTE: It does *not* give
LSXCommand focus. To do this, use !FocusCommand - this command
gives focus to LSXCommand, and if it's not visible, it shows it
also.
!CommandHide
````````````
Description: Just hides LSXCommand. Nothing really special.
!Command
````````
Description: Now use the power of LSXCommand anywhere within
Litestep! Shortcuts, wharf items, whatever that can run !bang
commands outside of its own can now use LSXCommand.
Example: !Command notepad
!CommandClearHistory
````````````````````
Description: Clears both the history in memory *and* the history
in modules.ini
!CommandShowContextMenu
```````````````````````
Description: Makes LSXCommand's Context Menu visible wherever
the cursor is on the screen, regardless of LSXCommand's
visibility.
!CommandRescanEngines
`````````````````````
Description: Rescans the engines.list file. Note: it does not
load a new engines.list file if specified in the step.rc; it
will attempt to reload the same engines.list file
II.4 The engines.list File
--------------------------
This file tells LSXCommand how to use different search engines to
search the Internet. The basic structure of the file is like
this (Note - it's probably a good idea to follow along with the
sample engines.list):
Default <moniker>
<moniker1> <keyed url1>
<moniker2> <keyed url2>
... ...
The <moniker> element is one of the monikers listed below
(<moniker1>, <moniker2>, etc). As explained above, the default
engine that will be used is <moniker>. The <keyed url#> elements
are, basically, URLs that tell LSXCommand where to send your web
browser. However, there is one difference: the special "key"
<args> is used to determine where to place your search string.
For instance, let's take a look at Yahoo!'s line:
Yahoo http://search.yahoo.com/bin/search?p=<args>
This means the following:
* The user must begin a search with ?Yahoo to use this search
* The user's search phrase (stuff after ?Yahoo) is placed in
<args>. So, the statement "?Yahoo something" gets converted
to: http://search.yahoo.com/bin/search?p=something
Multi-word searches are handled automatically by LSXCommand. For
this reason, LSXCommand can't quite use specialized engines to
their full extent - for instance, the "Simple Search" function on
the Lyrics server - www.lyrics.ch - has more than one search
field.
You can find the full engines.list (the one shipped with
LSXCommand is by no means complete and neither is this one, but it
is larger) here:
http://floach.pimpin.net/visigoth/litestep/lsxcommand-engines.list
TO MAKE YOUR OWN SEARCH ENTRIES:
Go to the page where you enter a search phrase. Type something
and search for it. If your URL bar has a lot of &'s and ='s, this
site can be used with LSXCommand. All you have to do is copy this
URL and paste it into your engines.list file with a moniker of its
own. Then, replace the phrase you searched for with the key
<args>.
The above type of an engine is one that uses the GET method to
send data to the web server. The other type of method is called
POST. This is the one that doesn't have all the &'s and ='s in
the URL. What you have to do is go back to the search page and
go into the actual HTML. Find the place with the <FORM> tag and
from here on, you have to set up your own &'s and ='s from the
names and values listed, using the ACTION= property of the form
tag as a base. Sorry if it's confusing, but it's almost 5 AM.
II.5 Tab-MicroComplete & Context Menu Access
--------------------------------------------
Tab-MicroComplete is a feature I made up on my own - not even
Microsoft has it. When you are typing in LSXCommand and get
an autocompletion, you may want to automatically go on to the next
word. For instance, when you search with a particular search
engine, and then want to search with the same engine again, but
with a different phrase.
With Tab-MicroComplete, you can do that. If you hit tab while in
LSXCommand, the cursor will be moved to the start of the next
word, or to the end of the line (depending on where the current
cursor is).
LSXCommand now has Context Menu Access! You can either right-
click on LSXCommand's command box or call the !CommandContextMenu
!bang command. If you use the !bang command, the menu appears
wherever your mouse is on screen. The Context Menu contains
past history entries, all your aliases, and all search engines.
II.6 Calculator Functionality
-----------------------------
As of version 1.7.8, the calculator functionality has been entirely
revamped, thanks to the work of Jonas Sicking. Just like in older
versions, calculator commands start with an = sign at the prompt, then
the expression to evaluate.
What's new? Everything - from the supported operators to the base
conversion, it's all been redone.
LSXCommand handles float precision, so decimals are allowed. The
result will be placed right back into LSXCommand's command box
with an equals sign in front of it and a space after it. This
enables you to use the result of the last command right off the
bat! (By the way - spaces are allowed)
LSXCommand understands the following operators:
+ - * \ / ( ) ^ % ! E
Addition, Subtraction, Multiplication, Division, Division,
Open Parenthesis, Close Parenthesis, Power, Modulus (remainder),
Factorial, Exponential
Yes, there are two division operators. HOWEVER, the \ means
integer division, and the / means regular division.
E is the 10 to the power operator. For instance, 1E6 is 1 million.
Note: don't try 1*E6 - that won't work. Just do 1E6 or (1E6). You
can even do 1E(5+4), but don't try to multiply the two.
FULL RECURSION
With the new calculator, recursion is fully supported. Meaning, as
long as the expression follows the order of operations, it should be
able to be calculated. For instance, you could easily do the following
calculation: =1E(log2(64)), which would return =1000000 (1 million).
MATH LIBRARY FUNCTIONS
With the revamping of the calculator functionality comes some really
useful stuff: a library of mathematics functions! The following is a
list of the supported math functions:
TRIG FUNCTIONS ANALYTIC FUNCTIONS CONSTANTS
`````````````` `````````````````` `````````
sin exp pi
cos ln e
tan log
cot log2
asin log10
acos sqrt
atan floor
acot ceil
sinh abs
cosh fpart
tanh ipart
sign
rand
rnd
The trig functions should be self explanatory. The log functions are
a bit tricky: ln and log are both base e, while log2 and log 10 are
base 2 and 10 respectively. If you haven't heard of the other
functions (like fpart and ipart), consult your graphing calculator's
manual - the one you never bothered to read because you already thought
you knew how to use a calculator :P
To use these functions, you would type something like '=sin(0)'. Note
that since pi and e are constants, you don't put () after them. For
instance, =pi would result in =3.141..
RPN CALCULATOR FUNCTIONALITY
As of version 1.7, you can use LSXCommand as a "Postfix"
calculator. If you are not familiar with this expression, leave
it be and don't worry about it! If you really want to learn more,
obtain a Hewlett-Packard RPN calculator and learn to use it.
RPN mode does *not* turn your history into a stack. It does,
however, make LSXCommand accept postfix notation expressions. See
the documentation for the CommandRPNCalculator RC Command above in
section II.2.
This functionality extends to the 1.7.8 revamping of the calculator
code. It should work fine, but I haven't played with it enough to say
anything more than that.
MULTIPLE NUMBER BASE FUNCTIONALITY
As of version 1.7.1, you can specify numbers in different number
bases. With the 1.7.8 rewrite of the calculator, LSXCommand supports
4 bases: decimal (10), binary (2), hexadecimal (16) and octal (8).
To specify a number as binary, place a 'b' in front of it. For
instance, entering "=b10" in LSXCommand will return "=2" as an
answer. If you typed "=5 + b10", you would get "=7" as an
answer.
Append the following prefixes for its respective base:
b - binary
h - hexadecimal
o - octal
d - decimal (this is, of course, the default)
NUMBER CONVERSION FUNCTIONALITY
With the version 1.7.8 rewrite comes much more flexible number
conversion. You can convert between any of the bases supported by
LSXCommand (listed above).
To convert *from* decimal *to* hexadecimal (color conversion), you
would do the following:
=dh 255 255 255 --> =hff hff hff
So, to convert *from* a base *to* another base, place the
identifier of the from base first, then the to base, then each
number to convert with a space between each one.
II.7 Backgrounds & Transparencies
---------------------------------
I'm sure many people have been wanting these features, so I made
my best attempt at added them to LSXCommand.
Backgrounds are just that - backgrounds. However, they only fill
the background window, much like the background can be set in
mIRC, but it doesn't show through the channel windows. If you
want a background to show through to the place you are typing,
set the CommandTransparentEditBox RC Command.
If there is no background set, CommandTransparentEditBox is
automatically turned off since the only effect will be to slow
down performance and other nasty things.
If there is a background, but CommandTransparentEditBox is *not*
set, the background acts like a border around the text box.
DISCLAIMER: If you turn CommandTransparentEditBox *on*, you WILL
see flashing as you are doing normal things with LSXCommand - such
as typing. Seriously, though, I have no doubts that you will get
some type of flashing effect in LSXCommand no matter what you do.
Until I write my own text output routines, you will just have to
deal.
II.8 Clock Settings
-------------------
The clock functionality in LSXCommand is quite robust, though hard
to use since the format commands look nothing like what you would
expect them to. If you want a quick format command that gives you
both the date and time, use "%#c". If you want more
customization, you will just have to read below. Sorry...
Okay, so you want more control, eh? The following comes straight
from the Microsoft Developer Network Library. It is a table of
format commands you must use to create your time & date string.
Examples are listed below the table.
%a Abbreviated weekday name
%A Full weekday name
%b Abbreviated month name
%B Full month name
%c Date & time representation for current location
%d Day of month as number (01 - 31)
%H Hour in 24-Hour format (00 - 23)
%I Hour in 12-Hour format (01 - 12)
%j Day of year as number (001 - 366)
%m Month as number (01 - 12)
%M Minute as number (00 - 59)
%p AM / PM indicator for current location
%S Second as number (00 - 59)
%U Week of year as number, with Sunday as first
day of the week (00 - 53)
%w Weekday as number, with Sunday as 0 (0 - 6)
%W Week of year as number, with Monday as first
day of the week (00 - 53)
%x Date representation for current location
%X Time representation for current location
%y Year without century (two digits) (00 - 99)
%Y Year with century (four digits)
%z Time-zone name / abbreviation
%Z Same as %z
%% Percent sign
The # sign (pound, hash, whatever you like..) can be used as a
prefix for most format commands. For instance, %#<character>. The
following lists the change in meaning for those commands that are
affected:
%#c Long date & time representation for current
location.
%#x Long date representation only for current
location.
%#d, %#H, %#I, Remove leading zeros.
%#j, %#m, %#M,
%#S, %#U, %#w,
%#W, %#y, %#Y
So, what the heck does all that crap mean? Basically, you think
of how you want your date & time to look, and then substitute the
proper codes where they are needed, for instance:
Think Of.. Code Used
`````````` `````````
05:30:00 PM %I:%M:%S %p
Monday 06/14/99 %A %x
Mon. 6/14/1999 %a %#m/%#d/%Y - Removes leading zeros
June 14, 1999 %B %d, %Y
Monday, June 14, 1999 %#x
I hope that's enough examples. If you have any problems, see
section IV about contacting me.
II.9 Tab File Completion
------------------------
If you turn on CommandTabFileComplete and
CommandNoTabMicroComplete, you can have LSXCommand autocomplete
filenames. For instance, if you type c:\autoe and hit <TAB>, you
will most likely get C:\AUTOEXEC.BAT If not, you can hit <TAB>
again to get the next matching filename. Note that you do have
to turn on both RC commands for this to work.
II.10 LSXCommandClock module
----------------------------
The LSXCommandClock module is a separate module from LSXCommand
that only has the clock and winamp features enabled. The RC
Commands are similar, but have a CommandClock instead of Command
prefix. The following is a list of the RC Commands supported
by LSXCommandClock (see section II.2 for details about these
Commands)
* CommandClockTextFontFace
* CommandClockTextColor
* CommandClockBorderColor
* CommandClockBackground
* CommandClockX, LSXCommandClockY
* CommandClockWidth, LSXCommandClockHeight
* CommandClockBGColor
* CommandClockTextSize
* CommandClockBorderSize
* CommandClockOffsetX, LSXCommandClockOffsetY
* CommandClockBevelBorder
* CommandClockNotAlwaysOnTop
* CommandClockNotMoveable
* CommandClockHiddenOnStart
* CommandClockNoCursorChange
* CommandClockSelectAllOnFocus
* CommandClockSelectAllOnMouseFocus
* CommandClockTransparentEditBox
* CommandClockScrollWinAmpTitle
* CommandClockHideOnUnfocus
* CommandClockString ****
* !ToggleCommandClock
* !FocusCommandClock
* !CommandClockShow
* !CommandClockHide
* !CommandClockMove
* !CommandClockToggleTimer
**** NOTE: CommandClockString is the same as the "CommandTime"
RC Command for LSXCommand (see section II.8 for details)
II.11 AlterScript module
------------------------
The AlterScript module is an alternative interpreter to Killarny's
script.dll. I was having problems getting his to work, so I wrote
my own... go figure. However, I'm sure the way he parses strings
and the way I do differ - this is no substitute!! There are many
differences, which are described below.
For instance, AlterScript does not interpret semi-colons that
represent pauses in Killarny's script.dll. Furthermore, every
command MUST be separated by a pipe character '|'. Everything
between pipes is a command.
AlterScript MUST be used with LSXCommand because it sends a
!Command !Bang command with the specified command. The actual
command sent (stuff between the pipes) should be *exactly* what you
would type into LSXCommand's text box. If you type it without
quotes into LSXCommand's text box, do the same between the pipes.
Same goes for if you do it with quotes.
Note that since I send the !Command !Bang command, you can use
aliases and even search engine commands.
III. Known Bugs / Limitations
=============================
III.1 Old history entries remain
--------------------------------
When you change the number of history entries LSXCommand of which
LSXCommand will keep track to a lower number, history entries that
filled slots above this number will remain in modules.ini. This
is a known bug - I'll fix it some day...
III.2 Quoted Names a Problem
----------------------------
Quoted names for search engines and aliases are a problem. Since
this would require re-writing a lot of list management code, I
decided to put it off until next revision. Either way, plans I
have for the next version of LSXCommand would require a massive
rewrite.
IV. Comments/Questions/Flames/Bug Reports
=========================================
All of these should be sent directly to me, visigoth. My e-mail
address is: gandhimail@worldnet.att.net
Seriously, though, I really would like to know if people are using
this thing. It'll help me determine whether it's worth continuing
the development of it.
V. Source Code
==============
Yes, source code is available. All you have to do is send me an
e-mail for it. My e-mail is gandhimail@worldnet.att.net
However, if you are going to edit the code, *please* read the
Source Code License below. There are certain restrictions.
VI. Source Code License
=======================
Article I. Sure, Have the Code!
-------------------------------
I don't want to stop progress on this module. So, I'm going to
let anyone who wants to edit the code, do so at his/her free will.
However, there are restrictions, as noted by the rest of the
license.
Article II. Redistribution
--------------------------
This file *must* be redistributed with the source code, with duly
noted changes to sections I, II, III, and IV. However, I request
that my name be left in Section I as the original author of the
module.
Article III. Leave Credit where It's Due!
-----------------------------------------
All I ask is that Section I still have my name in it as the
original author. Besides this file and the comments, there isn't
much to say that I did anything... :)
Article IV. Send Me Your Cool Stuff
-----------------------------------
I'd like to know about your ideas for LSXCommand! If you are
working on an idea, I would like to know what it is. I'm not like
Microsoft (ie. I'm going to steal your idea, throw my time at it,
and come out with a shoddier version first). I'd just like to
know what people are doing with my original code base. So, if you
do edit code for a purpose, please drop me a line as to what you
are doing.
Article V. Have Fun
-------------------
Remember, I'm not going to stop progress on this module, so go
ahead and do what you want to it. Just don't take credit for
what I've already done.About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published