LiteStep
LiteStep je alternativní shell pro Windows 9x, 2000 a XP (NT) vydaný pod licencí GNU General Public License (GPL). Inspirací pro jeho vznik byl window manager AfterStep.
Aktuální verze | 0.24.8 (28. února 2009) |
---|---|
Operační systém | Microsoft Windows |
Platforma | Microsoft Windows |
Vyvíjeno v | C++ a C |
Typ softwaru | svobodný software a shell |
Licence | GNU General Public License |
Web | www |
Některá data mohou pocházet z datové položky. |
LiteStep vyvíjel Francis Gastellu nejprve jako uzavřený projekt až do dubna 1998 (verze b23) a poté byl kompletně přepsán (verze 24 a vyšší) nově vytvořeným týmem vývojářů.
LiteStep byl později inspirací pro DarkStep, který podporuje skriptování, a pro PureLS. Také byl inspirací pro LDE(X), který naprogramoval Phil Stopford v roce 1999 - je to kompletní a stabilní náhrada shellu Windows založená na LiteStepu.
Normální Windows shell (nazývaný explorer shell) se skládá z lišty s úlohami (taskbar), systémové lišty (system tray), hodin, menu Start a pracovní plochy s ikonami.
LiteStep shell má ekvivalenty pro vše, co bylo uvedeno u exploreru, plus další funkce, které nejsou v explorer shellu k dispozici. Např. popup menu s často spouštěnými programy, které lze otevřít nejen pomocí tlačítka Start, ale stiskem pravého tlačítka myši kdekoli na pracovní ploše. Do lišty s úlohami lze vložit přepínání pracovních ploch, vlastní ikony a dokonce i ovládací prvky pro Winamp. LiteStep je tedy plně uživatelsky nastavitelný, ale cenou za to je jeho značná složitost. Pro nastavení LiteStepu se nepoužívá grafické prostředí, ale místo toho se veškerá nastavení zapisují do textových konfiguračních souborů.
Podobně, jako jiné alternativní shelly, je i LiteStep založen na myšlence malého jádra, které nahrává konfigurovatelné moduly DLL. Uživatel si množství používaných modulů může přizpůsobit a vytvořit si tak komplexní nebo minimalistické prostředí. Potřebné moduly mohou být automaticky staženy z Internetu.
Vzhled a funkčnost pracovní plochy v LiteStepu definuje nainstalované téma. Je to souhrn konfigurací, skriptů a obrázků uložený v .zip nebo .lsz souboru. Formát témat se vyvíjel až ke standardu OTS2 (Open Theme Standard), který umožňuje automatickou instalaci tématu. Uživatelská nastavení jsou oddělena a zůstávají zachována i při změně tématu. LiteStep si pravděpodobně oblíbí uživatelé, kteří si chtějí vytvořit vizuálně zajímavé prostředí nebo své prostředí rádi konfigurují.
Konfigurace
Litestep je obvykle nainstalován v adresáři C:\Litestep, kde jsou uloženy všechny základní soubory (jádro, moduly atd.) společné pro všechny uživatele.
Ve složce je také základní konfigurační soubor step.rc, kde se definují proměnné prostředí (evars), které odkazují na umístění základních adresářů.
Formát zápisu proměnné je $název_proměnné$.
V souboru step.rc se také do konfigurace začleňují další konfigurační soubory LiteStepu.
Uživatelská nastavení jsou umístěna (podle výběru během instalace) buď:
- odděleně v
C:\Documents and Settings\jméno uživatele\Application Data\LiteStep\personal\
- nebo v
C:\Litestep\profiles\jméno uživatele\personal\
Adresářová struktura
Adresář | proměnná | Umístění adresáře | Popis |
---|---|---|---|
LiteStep | $LiteStepDir$ | C:\LiteStep\ nastaví uživatel během instalace |
hlavní adresář LiteStepu - na kořenové úrovni obsahuje spustitelné soubory LiteStepu |
modules | $ModulesDir$ | C:\LiteStep\modules\ | centrální úložiště pro všechny moduly LiteStepu |
NLM | - | C:\LiteStep\NLM | obsahuje NetLoadModule.dll a NetLoadModule.ini (stahování modulů z Internetu) |
personal | $PersonalDir$ | C:\LiteStep\personal\ (Win9x) C:\LiteStep\profiles\uživatel\personal\ (WinXP) |
soubory v této složce (personal.rc, evars.rc, hotkey.rc, popup.rc) obsahují uživatelská nastavení - např. aplikační proměnné prostředí, klávesové zkratky a popup menu - jsou zde také osobní nastavení (a související soubory) pro lsxcommand a rainlendar (nastavení dalších modulů může uživatel přidat podle svého uvážení) |
themes | $ThemesDir$ | C:\LiteStep\themes\ (Win9x) C:\LiteStep\profiles\uživatel\themes\ (WinXP) |
všechna témata LiteStepu jsou uložena v podadresářích této složky - na kořenové úrovni obsahuje themeselect.rc, soubor určující jméno tématu, který se má použít. |
theme-X | $ThemeDir$ | C:\LiteStep\themes\theme-X\ (Win9x) C:\LiteStep\profiles\uživatel\themes\theme-X\ (WinXP) |
kořenový adresář tématu, které se právě používá. |
config | $ConfigDir$ | C:\LiteStep\themes\theme-X\config\ (Win9x)
C:\LiteStep\profiles\uživatel\themes\theme-X\config\ (WinXP) |
jsou zde uloženy konfigurační soubory pro téma LiteStepu jako např. theme.rc a popuptheme.rc |
$LiteStepDir$step.rc
je hlavní konfigurační soubor LiteStepu, který si LiteStep automaticky nahrává při startu. Ve skutečnosti lze jedině tímto souborem konfigurovat LiteStep. V minulosti se všechna nastavení LiteStepu ukládala přímo do step.rc a výsledkem byl obvykle několik stránek dlouhý soubor. Nastavení LiteStepu se dnes ukládají odděleně do souborů podle jejich účelu a ke step.rc se připojují příkazy include.
;------------------------------------------------------------------------------ ; definice důležitých adresářů ;------------------------------------------------------------------------------ PersonalDir "$LiteStepDir$profiles\$UserName$\personal\" ThemesDir "$LiteStepDir$profiles\$UserName$\themes\" ;------------------------------------------------------------------------------ ; nahrát osobní nastavení a téma ;------------------------------------------------------------------------------ include "$ThemesDir$themeselect.rc" include "$ThemeDir$config\_compatibility_patch.rc" IF ThemeIsOTS1Compliant ShortcutsDir "$Desktop$" ModulesDir "$ThemeDir$modules\" include "$PersonalDir$personal.rc" include "$ThemeDir$step.rc" ELSE ThemeIsOTS1Compliant false ModulesDir "$LiteStepDir$modules\" LoadModule "$LiteStepDir$NLM\NetLoadModule2.dll" *NetLoadModuleSite "http://www.loose-screws.com/download.php?netloadmodule=" *NetLoadModuleSite "http://modules.shellfront.org/" NetLoadModulePath "$ModulesDir$" NetLoadModuleDocPath "$ModulesDir$docs\" NetLoadModuleZipPath "$ModulesDir$archive\" NetLoadModuleAliasFile "$LiteStepDir$NLM\NetLoadModule.ini" include "$PersonalDir$personal.rc" include "$ThemeDir$theme.rc" ENDIF
V první sekci step.rc se definuje umístění adresářů PersonalDir s osobním nastavením a adresáře ThemesDir, kde jsou nainstalována témata.
Ve druhé sekci se nahrává nainstalované téma. Připojí se konfigurační soubor themeselect.rc, který obsahuje definici proměnné ThemeDir, a ta už ukazuje na adresář instalovaného tématu. V závislosti na tom, jestli je téma vytvořené podle standardu OTS, se nastavují další proměnné (OTS1 je starší formát, doporučuje se formát OTS2).
Také se zde nahrává NetloadModule (LoadModule "$LiteStepDir$NLM\NetLoadModule2.dll") a nastavují jeho parametry, aby bylo možné automaticky stáhnout moduly, které téma požaduje:
- stránky, odkud se moduly můžou stahovat
- kam se uloží nainstalované moduly
- kam se uloží stažené archivy s moduly
- kam se uloží dokumentace k modulům
Naposled se vkládá soubor personal.rc s nastavením uživatele a pak hlavní konfigurační soubor tématu theme.rc.
$PersonalDir$personal.rc
Tento soubor má dvojí účel:
- Slouží jako 'kontejner' pro všechna uživatelská nastavení, která se vkládají pomocí příkazů include.
- K definování velmi specifických nastavení modulů, která se mají aplikovat univerzálně na všechna témata.
;---------------------------------------------------------------------
;personal config file
;---------------------------------------------------------------------
;Dejte pozor při editaci tohoto souboru - neměňte obsah prvních dvou sekcí,
;---------------------------------------------------------------------
; I NEUPRAVUJTE
;---------------------------------------------------------------------
OTSCfgMajorVersion 2
OTSCfgMinorVersion 0
include "$PersonalDir$evars.rc"
include "$PersonalDir$hotkey.rc"
include "$PersonalDir$popup.rc"
;---------------------------------------------------------------------
; II NEMĚŇTE, POKUD NEVÍTE, CO DĚLÁTE :)
;---------------------------------------------------------------------
*Desktop RButton !Popup ;right-click popup menu
*Desktop LButton+SHIFT !PopupTheme ;SHIFT-left-click popup menu
*jDeskMButton2 [.none;!none;!Popup;!none] ;right-click popup menu
*jDeskMButton1 [SHIFT;!none;!PopupTheme;!none] ;SHIFT-left-click popup menu
;---------------------------------------------------------------------
; load hotkey module
;---------------------------------------------------------------------
;--> load hotkey module
*NetLoadModule jkey-0.37
;--> define some jKey settings
jKeyVKTable "$PersonalDir$jkey\vk104.txt"
jKeyUseHotkeyDef
;---------------------------------------------------------------------
; personal settings: popup
;---------------------------------------------------------------------
;--> define desired popup settings
PopupMenuDelay 100
PopupScrollSpeed 1
;---------------------------------------------------------------------
; personal settings: lsxcommand
;---------------------------------------------------------------------
;--> search engine and history files
CommandSearchEngineList "$PersonalDir$lsxcommand\engines.list"
CommandHistoryFile "$PersonalDir$lsxcommand\history.ini"
;--> number of history entries
CommandHistoryEntries 20
;---------------------------------------------------------------------
; personal settings: rainlendar
;---------------------------------------------------------------------
;--> paths to rainlendar.ini, events.ini, and rainlendar language files
RainlendarPath "$PersonalDir$rainlendar\"
RainlendarEventsPath "$PersonalDir$rainlendar\"
RainlendarLanguagesPath "$PersonalDir$rainlendar\languages\"
;---------------------------------------------------------------------
; personal settings: miscellaneous
;---------------------------------------------------------------------
V první sekci se do personal.rc importují uživatelsky definované proměnné (evars.rc), klávesové zkratky (hotkeys.rc) a nastavení popup menu (popup.rc). Nyní se všechna tato nastavení zpřístupní vložením personal.rc, do step.rc - viz výše. Sekce také definuje dvě proměnné prostředí určující verzi OTS, kterou konfigurační soubory podporují.
Druhá sekce obsahuje určitá nastavení modulu pro desktop. (Jsou zde dvě sady nastavení, protože v LiteStepu jsou k dispozici dva moduly pro desktop). Nastavení definují, co se stane po kliknutí pravým tlačítkem myši (pravé-kliknutí) na pracovní ploše, a co po SHIFT a kliknutí levým tlačítkem myši (SHIFT-levé-kliknutí).
Pravé-kliknutí na desktopu otevře uživatelské popup menu, uložené v popup.rc. SHIFT-levé-kliknutí spustí popup menu definované autorem tématu, které je uložené v popuptheme.rc. (pokud autor tématu popup menu nedefinoval, pak SHIFT-levé-kliknutí nezpůsobí nic.)
Třetí sekce nahrává uživatelův modul pro klávesové zkratky (hotkey). Doporučuje se nahrávat tento modul zde. Ne každé téma potřebuje hotkey modul, takže kdyby nahrávání hotkey modulu zajišťovala témata, uživatel by případně mohl o své klávesové zkratky přijít. A na konec - uživatelé, kteří klávesové zkratky nepotřebují, jednoduše v personal.rc hotkey modul nenahrají, spíše než aby editovali každé téma.
$PersonalDir$evars.rc
Soubor obsahuje proměnné prostředí, které definují cesty k určitým spustitelným souborům.
;--------------------------------------------------------------------- ; Editujte *pouze* cesty tak, jak potřebujete, ale zachovejte *FORMÁT* souboru nezměněný ;--------------------------------------------------------------------- FileManager "C:\WINDOWS\explorer.exe" TxtEditor "%SystemRoot%\system32\NOTEPAD.EXE" CmdPrompt "C:\WINDOWS\system32\cmd.exe" AudioPlayer "c:\Program Files\winamp\winamp.exe" MediaPlayer "C:\Program Files\Windows Media Player\wmplayer.exe" GfxViewer "C:\XnView\XnView.exe" GfxEditor "C:\Windows\System32\mspaint.exe" Browser "C:\Program Files\Mozilla Firefox\firefox.exe" DUN "rasphone.exe" Email "C:\Program Files\Mozilla Thunderbird\thunderbird.exe" IRC "..." FTP "C:\Program Files\Filezilla\Filezilla.exe" IM "" ;--------------------------------------------------------------------- ; Definujte libovolné další proměnné, které potřebujete. ;--------------------------------------------------------------------- ;MiscApp "c:\program files\misc\app.exe"
Proměnné prostředí v první sekci jsou částí OTS specifikace. Odkazují na tzv. běžné aplikace, např. textový editor, internetový prohlížeč atd. Cestu ke spustitelnému souboru, spojenou s proměnnou, definuje uživatel podle instalace svého systému a tímto způsobem vzniká sada univerzálně dostupných proměnných. Např. v tématu se může bezpečně používat proměnná $Browser$ ke spuštění libovolného prohlížeče, který uživatel preferuje.
Poslední sekce je určena výhradně pro uživatele, kteří si zde definují další potřebné proměnné pro aplikace. Autoři témat by neměli na uživatelích požadovat, aby zde přidávali proměnné nutné pro instalaci nebo správnou funkci tématu - k tomu slouží (kromě jiného) themevars.rc.
$PersonalDir$hotkey.rc
;------------------------------------------------------------------------------ ; vzor konfigurace klávesových zkratek ;------------------------------------------------------------------------------ ;--> Zkratky, které napodobují chování explorer shellu *Hotkey WIN R !Run *Hotkey WIN E "$FileManager$" *Hotkey WIN PAUSE control.exe sysdm.cpl *Hotkey WIN M !MinimizeWindows ;*Hotkey WIN+SHIFT M !MaximizeWindows ;--> LiteStep-specifické zkratky *Hotkey CTRL+ALT R !Recycle *Hotkey CTRL+SHIFT F1 "http://lsdocs.shellfront.org/" ;--> zkratky pro ovládání správce virtuálních pracovních ploch (VWM) *Hotkey CTRL LEFT !VWMLeft ;move to left desktop *Hotkey CTRL RIGHT !VWMRight ;move to right desktop *Hotkey ALT LEFT !VWMMoveApp Left ;move active window left *Hotkey ALT RIGHT !VWMMoveApp Right ;move active window right ; hotkey Ctrl+Esc from windows *Hotkey CTRL ESCAPE !RestoreWindows ;--- ovládání přehrávače AMP --- *Hotkey Win+Ctrl left !amp_rewd5s *Hotkey Win left !amp_prev *Hotkey Win right !amp_next *Hotkey Win up !amp_pause *Hotkey Win down !amp_play *Hotkey Win S !Shutdown *HotKey Win V !VWMRollup *hotkey win = !amp_volumeup *hotkey win - !amp_volumedown
Zkratka Ctrl+Alt+R patří mezi důležité. Po stisknutí se provede příkaz !Recycle, který znovu načte konfiguraci LiteStepu, a teprve poté se projeví změny provedené v konfiguračních souborech.
Za příkazem Hotkey je vždy umístěn nejprve název modifikační klávesy (modkey). Pokud je jich více, oddělují se pomocí plus, pak následuje mezera a název alfanumerické klávesy (hotkey). Poslední na řádku je !bang příkaz, cesta ke spustitelnému příkazu nebo URL adresa.
$PersonalDir$popup.rc
definuje popup menu, které se otevře pravým kliknutím.
;--------------------------------------------------------------------- ; vzor konfigurace popup.rc ;--------------------------------------------------------------------- *Popup !New !Popup ;začátek popup menu, nemazat *Popup "file manager" "$FileManager$" *Popup "text editor" "$TxtEditor$" *Popup !Separator IF Win9x *Popup "programs" !DynamicFolder:"$Programs$" ELSE *Popup "programs" !DynamicFolder:"$Programs$|$CommonPrograms$" *Popup "admin" !DynamicFolder:"$AdminToolsDir$" ENDIF *Popup "quicklaunch" "!PopupFolder:$QuickLaunch$" *Popup ~New ;konec popup menu, nemazat
$ThemesDir$themeselect.rc
Tento soubor určuje, které téma LiteStepu se používá, a je tak vlastně klíčem k přepínání mezi tématy.
;--------------------------------------------------------------------- ; pro přepnutí tématu upravte tuto proměnnou ;--------------------------------------------------------------------- ThemeDir "$ThemesDir$theme-X\"
V souboru se definuje proměnná prostředí $ThemeDir$, která ukazuje cestu ke kořenovému adresáři tématu, které se má použít. Tuto proměnnou používá poslední příkaz include ve step.rc k nahrání konfiguračního souboru theme.rc z tohoto tématu. Takže pro přepnutí témat stačí editovat proměnnou $ThemeDir$ tak, aby ukazovala na kořenový adresář a spustit příkaz !recycle.
$ThemeDir$theme.rc
je hlavní konfigurační soubor tématu, který má několik významných funkcí:
- stanovit, podle které verze OTS se téma řídí
- specifikovat jméno tématu i jeho autora
- definovat potřebné proměnné prostředí pro adresáře tématu
- nahrát moduly LiteStepu
- specifikovat nastavení pro moduly LiteStepu
První sekce zajišťuje první tři body. Specifikuje jméno tématu, jméno autora a definuje proměnné prostředí pro adresáře 'config' a 'images'.