khanhas / ueli

An 'alt+space' launcher for Windows
MIT License
88 stars 5 forks source link

ueli logo

ueli

Original repo: https://github.com/oliverschwendener/ueli
This repo contains personal modification, only supports Windows 10. Some optional requirements:

musicplayer

ueli screenshot

Table of contents

Installation

Download exe to install or zip to unzip manually.

Quick tutorial

Keyboard shortcuts

Keyboard shortcut Description
Ctrl O Open the selected program or file at it's location
Ctrl Shift C Copy search result to clipboard
Scroll up
Scroll down
F6, Ctrl L Set focus on user input
Ctrl , Ctrl Browse previous input

Hold Alt when opening an executable to run as adminstrator.
Hold Alt when opening an folder to open it in text editor.

Check out config file for mode and media player hotkeys.

Features

ueli also can be extended with plugins

Plugins

To install plugins, put plugin you want to use in folder %userprofile%\.ueli\plugins\.
Following is list of plugins in plugins.zip package I included in releases page.

ddg

Mode: Online
Prefix: dd!

A Duckduckgo scrapper. Convenient for a quick web search.

plugin_ddg

firefox

Mode: Run
No prefix

Search Firefox visited sites.

plugin_firefox

moneyconverter

Mode: Online
No prefix

Converts over 160 currencies. Exchange rates are updated everyday.
This plugin requires you to register a free account at https://fixer.io/ to get a personal API key.
After that, put your API key in %userprofile%\.ueli\plugins\moneyconverter\api-key.js.

Syntax: <number> <from currency> [to] <to currency> <to currency> ...
to is optional, it's ok to not type it in.

Example usages:

plugin_moneyconverter

rainmeter

Mode: Run
Prefix: rm!

Executes Rainmeter bang. Bang and config names are also autocompletable (hit Tab when selecting a result).

plugin_rainmeter

Customization

All settings are stored in ~/ueli.config.json. You can modify this file to change the default values.

Option Type Description
applicationFileExtensions string[] File extensions which are used to find applications in the specified folders.
applicationFolders [path, alias][] path is the folder path which are scanned for applications, alias is for search result description.
applicationKeywordBlacklist string[] List of keyword to excluding application from search results, like uninstall or help
autoStartApp boolean If the app should be started automatically when you log in
blurBackground boolean Whether ueli should show blurry background
bookmarkFromBrowser string Browser to get bookmark from. Valid values: firefox, chrome, vivaldi, opera, chromium.
bookmarkProfileName string https://github.com/khanhas/ueli/wiki/Browser-bookmark-search
customCommands customCommand[] A list of customCommand.
customIcons customIcons Define custom search results and mode icon
directorySeparator string Separator for search result description
everythingFilterFilePath string Path to Everything's filters CSV file.
hotkeyEverythingMode string
hotkeyEverythingModeCwd string Hotkey for Everything mode with Explorer location-aware.
hotkeyOnlineMode string
hotkeyRunMode string
hotkeyRunModeCwd string Hotkey for Run mode with Explorer location-aware.
hotkeyWindowsMode string
maxSearchResultCount number Maximum number of search results to be displayed
maxTotalSearchResult number Maximum number of search results to be listed
musicPlayerHotkeyBack string
musicPlayerHotkeyLike string
musicPlayerHotkeyMute string
musicPlayerHotkeyNext string
musicPlayerHotkeyPlayPause string
musicPlayerLocalName string Valid values: aimp, cad, foobar, itunes, mediamonkey, spotify, winamp, wmp
musicPlayerSmallSize boolean Wheather using small player
musicPlayerType string websocket or local
musicPlayerWebSocketPort number Port to use when communicating with player to get information.
onlineModeDelay number In milisecond. Delays an amount of time before starting to search.
powerShellPath string Set path to custom powershell cli. Useful for anyone want to use Powershell Core 6 instead of default Windows Powershell.
searchOperatingSystemSettings boolean If operting system settings and commands should appear in the search results
searchResultExecutionArgumentFontSize number Font size of the search result execution argument in pixels
searchResultHeight number Height of a search result box in pixels
searchResultNameFontSize number Font size of the search result name in pixels
textEditor textEditor Set your favourite editor to open folder with it.
userInputFontSize number Font size of the user input in pixels
userInputHeight number Height of the user input box in pixels
useNativeApplicationIcon boolean Whether using native bitmap icon of programs.
webSearches webSearchEngine[] A list of webSearchEngines
windowWidth number Width of the main window in pixels

customCommand object

customIcons object

textEditor object

webSearchEngine object

Development

Requirements

Setup

git clone https://github.com/khanhas/ueli
cd ueli
yarn

Run

yarn electron-rebuild
yarn build
yarn start

Note: there is also a watch task $ yarn build:watch which watches the stylesheets and typescript files and transpiles them automatically if there are any changes.

Debug

Note: for debugging you need Visual Studio Code

Choose one of these debug configurations:

Debug configurations

Package

yarn package

For distributing:

yarn package:publish

License

Copyright (c) Oliver Schwendener. All rights reserved.

Licensed under the MIT License.