GithubHelp home page GithubHelp logo

jtrakk / rofiemoji-rofiunicode Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kabouik/rofiemoji-rofiunicode

0.0 1.0 0.0 4.54 MB

System-wide character-picker: emoji and unicode shell extensions for rofi

Shell 25.59% CSS 74.41%

rofiemoji-rofiunicode's Introduction

rofiemoji-rofiunicode

Inspired by fdw/rofimoji and forked from its script version nkoehring/rofiemoji, rofiemoji-rofiunicode is a character-picker that allows searching and copying emojis and over 25'000 unicode characters directly from davatorium/rofi.

It comes with an example configuration file and a theme that should make it ready to use, even for those who never used rofi before. When using the recommended procedure, unicode and emoji lists show up as separate tabs in rofi, in addition to rofi's window, drun, run and ssh modis:

rofiemoji-rofiunicode1

rofiemoji-rofiunicode2

The two underlying scripts, rofiemoji.sh and rofiunicode.sh, will try to download the lists of emoji and unicode characters if they are missing, but this should already be taken care of when cloning this repository. The list of emojis is fetched from www.unicode.org while the unicode list was created by /u/fe80c0ffee.

Prerequisites

  • rofi from davatorium/rofi or from your package manager.
  • xsel to copy the selection to the clipboard. You should find it in your package manager.
  • An emoji capable font, e.g., Noto Emoji or Noto Color Emoji.

Installation

  1. Clone this repository into ~/.config:
cd ~/.config # Using this path is important for next steps
git clone https://github.com/Kabouik/rofiemoji-rofiunicode.git
  1. (Optional) Apply the recommended configuration:
mv $HOME/.config/rofi/config $HOME/.config/rofi/config.back # Back up previous rofi configuration, if any
cp $HOME/.config/rofiemoji-rofiunicode/config.example $HOME/.config/rofi/config # Apply the supplied configuration
mkdir -p $HOME/.local/share/rofi/themes
cp $HOME/.config/rofiemoji-rofiunicode/sidetab-adapta.rasi $HOME/.local/share/rofi/themes/ # Provide customized sidetab-adapta.rasi theme
  1. If step 2 was completed, add a custom keybinding using your window-manager settings for the following command:
rofi -show windowcd -theme-str '#window{width: 30%;}' # See the rofi documentation for details
  1. If step 2 was skipped, add a custom keybinding using your window-manager settings for a command containing at least the following arguments:
rofi -show unicode -modi 'unicode:~/.config/rofiemoji-rofiunicode/rofiunicode.sh,emoji:~/.config/rofiemoji-rofiunicode/rofiemoji.sh' -theme-str '#window{width: 30%;}'

Usage

  1. Invoke rofi using the keybinding you set and navigate through tabs using Ctrl+Tab (default).

  2. Type a keyword in the emoji or unicode tabs and press Return to copy the highlighted character to the clipboard and close rofi.

Recommended configuration

Users who already configured rofi to their own taste before may prefer to skip installation step 2 to keep their custom changes.

However, for users new to rofi, applying the recommended configuration (installation step 2) should facilitate the setup by configuring everything as in the screenshots. This will move/rename the supplied config.example file and a transparent sidetab-adapta.rasi theme (original without transparency taken from the davatorium/rofi-themes collection) into the adequate folders.

Make sure you review config.example to check if my custom changes will work on your machine. While most of them should be system-agnostic, some settings are tailored to my own use and may not work on all systems.

For instance, the settings in config.example make rofi work with gnome-terminal, but default rofi settings might work better when using other terminals. In the latter case, it is best to edit /.config/rofiemoji-rofiunicode/config.example before installation step 2 (or ~/.config/rofi/config after installation step 2) to alter it according to the specific requirements of your system. Alternatively, rofi defaults can be restored by prepending ! to the following lines to disable them:

Before:

rofi.terminal: gnome-terminal
rofi.ssh-command: {terminal} -- {ssh-client} {host}
rofi.run-shell-command: {terminal} -- bash -c "{cmd}; bash"

After:

! rofi.terminal: gnome-terminal
! rofi.ssh-command: {terminal} -- {ssh-client} {host}
! rofi.run-shell-command: {terminal} -- bash -c "{cmd}; bash"

Alternative emoji- and unicode-picker

kabouik/rofimoji is an alternative based on the original fdw/rofimoji instead of the nkoehring/rofiemoji script version, yet still with the unicode functionality. It allows the multiple selection of emojis or unicode characters, as well as direct input without prior clipboard step, but the customization possibilities are more limited and there is no visual unification with your main rofi instance.

Kabouik/rofimoji

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.