1
0
Fork 0
mirror of https://github.com/davatorium/rofi.git synced 2024-11-18 13:54:36 -05:00

Small tweaks to release note

This commit is contained in:
Dave Davenport 2017-09-25 22:28:47 +02:00
parent 5fdf5031d2
commit 1324bb0edd

View file

@ -1,42 +1,52 @@
# V1.4.0: I reject your truth and trumpstitute my own # V1.4.0: I reject your truth and trumpstitute my own
> This release contains some major changes. One of them being a new theme engine. The migration from older versions to > This release contains some major changes. One of them being a new theme
> this version might not go flawless. > engine. The migration from older versions to this version might not go
> flawless.
With more then 750 commits since the last version, this is one of the biggest releases so far. With more then 750 commits since the last version, this is one of the biggest
In this version we used the groundwork laid in v1.3.0 and went completely nuts with it. Hopefully this release should releases so far. In this version we used the groundwork laid in v1.3.0 and went
satisfy the die-hard desktop [ricers](https://www.reddit.com/r/unixporn/) with a brand new theme engine. completely nuts with it. Hopefully this release should satisfy the die-hard
Lot of different colors, border, multiple fonts everything is now possible. desktop [ricers](https://www.reddit.com/r/unixporn/) with a brand new theme
engine. Lot of different colors, border, multiple fonts everything is now
possible.
Because of The great work done by [SardemFF7](https://github.com/SardemFF7/) the code base is simplified and the Because of The great work done by [SardemFF7](https://github.com/SardemFF7/) the
key and mouse handling improved. The libraries provided by SardemFF7 also made it possible to add a often requested code base is simplified and the key and mouse handling improved. The libraries
feature of icons (correctly using the icon-theme). A feature I never expected to be added. To top this off, SardemFF7 provided by SardemFF7 also made it possible to add a often requested feature of
added support to build rofi using [meson](http://mesonbuild.com/). icons (correctly using the icon-theme). A feature I never expected to be added.
To top this off, SardemFF7 added support to build rofi using
[meson](http://mesonbuild.com/).
A last big addition and still in beta, is support for plugins. Allowing the addition of some weird/fancy features. A last big addition and still in beta, is support for plugins. Allowing the
Currently two plugins are available, [blezz](https://gitcrate.org/qtools/rofi-blezz) a quick launch menu with it own addition of some weird/fancy features. Currently two plugins are available,
menu definition and [top](https://gitcrate.org/qtools/rofi-top/) displaying running processes. [blezz](https://gitcrate.org/qtools/rofi-blezz) a quick launch menu with it own
menu definition and [top](https://gitcrate.org/qtools/rofi-top/) displaying
running processes.
Beside these major changes, this release includes a lot of bug-fixes and small improvements. See the bottom of this Beside these major changes, this release includes a lot of bug-fixes and small
release notes for a more complete list of changes. improvements. See the bottom of this release notes for a more complete list of
changes.
## Theme engine ## Theme engine
The biggest new feature of this release is the theme engine. Building on the changes made in v1.3.0 we implemented a new The biggest new feature of this release is the theme engine. Building on the
theme engine and it has a completely new theme format. While the themes are a lot more verbose now, it does allow for a changes made in v1.3.0 we implemented a new theme engine and it has a completely
lot of extra customizations. new theme format. While the themes are a lot more verbose now, it does allow for
a lot of extra customizations.
It is now possible to theme each widget in rofi independently: It is now possible to theme each widget in rofi independently:
### Colors ### Colors
You can now set the color on each widget independent in most of the CSS supported color formats (hsl, cmyk, rgb, etc.) You can now set the color on each widget independent in most of the CSS
and each color can have a transparency. There are three colors that can be set on each widget: supported color formats (hsl, cmyk, rgb, etc.) and each color can have a
transparency. There are three colors that can be set on each widget:
* **background-color** * **background-color**
Used to draw the background of the widget. Each widget is drawn on top of it parent, if the background is Used to draw the background of the widget. Each widget is drawn on top of it
transparent, you will see the parents widget. parent, if the background is transparent, you will see the parents widget.
* **border-color** * **border-color**
Used to draw the borders. Used to draw the borders.
* **text-color** * **text-color**
@ -46,51 +56,62 @@ and each color can have a transparency. There are three colors that can be set o
### Borders ### Borders
On every widget we can now configure a border for each of the four sides, the color of the border, the style of the On every widget we can now configure a border for each of the four sides, the
border (solid or dashed) and the radius of the corners can be set. color of the border, the style of the border (solid or dashed) and the radius of
the corners can be set.
![border1](rofi-border.png) ![border1](rofi-border.png)
This combined with (fake) transparency can make for a very nice looking, rounded rofi experience. This combined with (fake) transparency can make for a very nice looking, rounded
rofi experience.
![border2](rofi-border-transp.png) ![border2](rofi-border-transp.png)
### Fonts ### Fonts
An often made request was support for different fonts for the entry box and the list. With the new theme, it is possible An often made request was support for different fonts for the entry box and the
to change the font and size of all widgets. list. With the new theme, it is possible to change the font and size of all
widgets.
![fonts](rofi-fonts.png) ![fonts](rofi-fonts.png)
> Note that opening a fonts is one of the slowest operations during rofi startup; having multiple fonts could have a > Note that opening a fonts is one of the slowest operations during rofi
> significant impact on startup times. > startup; having multiple fonts could have a significant impact on startup
> times.
### Flexible layout ### Flexible layout
To top all these changes, as an advanced feature the whole layout of the window can be changed. Making it possible to To top all these changes, as an advanced feature the whole layout of the window
mimic the original dmenu view, or make it appear as a minimal context menu. can be changed. Making it possible to mimic the original dmenu view, or make it
appear as a minimal context menu.
![dmenu](rofi-dmenu.png) ![dmenu](rofi-dmenu.png)
## Error reporting ## Error reporting
The new theme parser will also be more verbose when encountering parsing errors, hopefully helping debugging and The new theme parser will also be more verbose when encountering parsing errors,
modifying themes. hopefully helping debugging and modifying themes.
For example when forgetting a trailing ';' will report where it failed, and what it expected (a ';'). For example when forgetting a trailing ';' will report where it failed, and what
it expected (a ';').
![rofi-error](rofi-error.png) ![rofi-error](rofi-error.png)
## Importing ## Importing
The new theme parser also support importing and overriding. This allow you to make make modifications to an existing The new theme parser also support importing and overriding. This allow you to
theme, without having to completely copy it. For example, I want to use the `arthur` theme (shipped with rofi) but use make make modifications to an existing theme, without having to completely copy
fake transparency and change the font off the result list. it. For example, I want to use the `arthur` theme (shipped with rofi) but use
fake transparency, change the font off the result list and import a set of
overriding colors from `mycolors`.
```css ```css
// Import the default arthur theme // Import the default arthur theme
@import "arthur" @theme "arthur"
// Load in overriding of colors from mycolors.
@import "mycolors"
/* on the window widget, set transparency to use a screenshot of the screen. */ /* on the window widget, set transparency to use a screenshot of the screen. */
#window { #window {
@ -104,9 +125,11 @@ fake transparency and change the font off the result list.
## Icons ## Icons
Another often made request, I never expected to be implemented, was icon support. With the help of SardemFF7 an Another often made request, I never expected to be implemented, was icon
implementation was possible that correctly follows the XDG icon specification and does not negatively impact the support. With the help of SardemFF7 an implementation was possible that
correctly follows the XDG icon specification and does not negatively impact the
performance. Currently the drun and the window switcher can application icons. performance. Currently the drun and the window switcher can application icons.
To enable icons, set the `show-icons` property to `true`.
![icons](rofi-icons.png) ![icons](rofi-icons.png)
@ -115,8 +138,8 @@ performance. Currently the drun and the window switcher can application icons.
## More flexible key and mouse bindings ## More flexible key and mouse bindings
Thanks to another great work of SardemFF7 you can now configure how the mouse Thanks to another great work of SardemFF7 you can now configure how the mouse
behave and bind modifier keys. It also improves on error messages. It will now behave and bind modifier keys. It also improves on error messages. For example
detect duplicate bindings. it will now detect duplicate bindings.
For example to select an entry on single click, instead of double click: For example to select an entry on single click, instead of double click:
@ -127,8 +150,9 @@ rofi -show run -me-select-entry '' -me-accept-entry 'Mouse1'
## Fuzzy Matching ## Fuzzy Matching
With thanks to Fangrui Song, the `fuzzy` matcher will now use a ranking similar to `fzf` to sort the results. With thanks to Fangrui Song, the `fuzzy` matcher will now use a ranking similar
This should hopefully to improve the results, something a lot of users will appreciate. to `fzf` to sort the results. This should hopefully to improve the results,
something a lot of users will appreciate.
Without: Without:
@ -143,13 +167,15 @@ With:
> This feature is still in beta stage. > This feature is still in beta stage.
It is now possible to add custom mode via C plugins. This is allows interactive modi to be added to rofi. It is now possible to add custom mode via C plugins. This is allows interactive
For example it is possible to have `top` (display linux processes) mode: modi to be added to rofi. For example it is possible to have `top` (display
linux processes) mode:
![rofi top](rofi-top.png) ![rofi top](rofi-top.png)
This mode allows sorting of the result on different keys (cpu usage, memory, etc.) to be selected, programs to be killed This mode allows sorting of the result on different keys (cpu usage, memory,
and refreshes the results every 2 seconds. etc.) to be selected, programs to be killed and refreshes the results every 2
seconds.
See [here](https://gitcrate.org/qtools/rofi-top). See [here](https://gitcrate.org/qtools/rofi-top).
@ -158,9 +184,10 @@ See [here](https://gitcrate.org/qtools/rofi-top).
> This feature is in alpha stage. > This feature is in alpha stage.
The new theme format can now (as an alpha) feature be used to set rofi's configuration. In the future, when we add The new theme format can now (as an alpha) feature be used to set rofi's
wayland support, we want to get rid of the current Xresources (X11) based configuration format. configuration. In the future, when we add wayland support, we want to get rid of
You can see how this would look using: `rofi -dump-config`. the current Xresources (X11) based configuration format. You can see how this
would look using: `rofi -dump-config`.
## Detailed Changelog ## Detailed Changelog
@ -169,7 +196,8 @@ You can see how this would look using: `rofi -dump-config`.
* Keybinding. Duplicate bindings will now be reported. * Keybinding. Duplicate bindings will now be reported.
* Invalid commandline options. * Invalid commandline options.
* Etc. * Etc.
* Customizable highlight, allowing underline, strikethrough, italic, bold, small caps and the color to be set. * Customizable highlight, allowing underline, strikethrough, italic, bold, small
caps and the color to be set.
* Give up when keyboard is not grabbed in first 5 seconds. * Give up when keyboard is not grabbed in first 5 seconds.
* Improve manpage * Improve manpage
* rofi (1) * rofi (1)