Lot's of awesome changes and some added scripts

This commit is contained in:
Chris Cochrun 2020-10-02 06:04:41 -05:00
parent ed91c15381
commit d36ce8b8b9
23 changed files with 303 additions and 374 deletions

23
awesome/globalkeys.fnl Normal file
View file

@ -0,0 +1,23 @@
(local awful (require "awful"))
(local gears (require "gears"))
(local beautiful (require "beautiful"))
(local hotkeys_popup (require "awful.hotkeys_popup"))
(var mod "Mod4")
(var shift "Shift")
(var ctrl "Control")
(var alt "Mod1'")
(global globalkeys (gears.table.join
(awful.key [mod alt] "m" (awful.spawn "mpv --player-operation-mode=pseudo-gui")
{ :description "launch mpv" :group "apps" })
(awful.key [mod] "s" hotkeys_popup.show_help
{ :description "show help" :group "awesome" })))
globalkeys
;; -- mpv
;; awful.key({ modkey, altkey }, "m", function () awful.spawn("mpv --player-operation-mode=pseudo-gui") end,
;; {description = "open mpv", group = "apps"}),

View file

@ -4,13 +4,13 @@
(local ruled (require "ruled"))
(local rules (require "rules"))
(local beautiful (require "beautiful"))
(local keys (require "keys"))
(local wibox (require "wibox"))
(local xresources (require "beautiful.xresources"))
;; (local naughty (require "naughty"))
(local menubar (require "menubar"))
(local hotkeys_popup (require "awful.hotkeys_popup"))
(local dpi xresources.apply_dpi)
(local globalkeys (require "globalkeys"))
;;; rules
(set awful.rules.rules rules)
@ -176,9 +176,7 @@
;; })
;; ))
(root.keys globalkeys)
;;; autostart applications
(awful.spawn.with_shell "picom --experimental-backend")

View file

@ -1,24 +0,0 @@
(local awful (require "awful"))
(local gears (require "gears"))
(local beautiful (require "beautiful"))
(local hotkeys_popup (require "awful.hotkeys_popup"))
(var modkey "Mod4")
(var alt "Mod1")
(var shift "Shift")
(var ctrl "Control")
(local globalkeys (awful.keyboard.append_global_keybindings [
(awful.key [ modkey alt ] "m" (awful.spawn "mpv --player-operation-mode=pseudo-gui")
{ :description "launch mpv" :group "apps" })
(awful.key [ modkey ] "s" hotkeys_popup.show_help
{ :description "show help" :group "awesome" })
]))
globalkeys
;; -- mpv
;; awful.key({ modkey, altkey }, "m", function () awful.spawn("mpv --player-operation-mode=pseudo-gui") end,
;; {description = "open mpv", group = "apps"}),

View file

@ -1,256 +0,0 @@
local awful = require('awful')
local gears = require('gears')
require('awful.autofocus')
local modkey = "Mod4"
local altkey = "Mod1"
local dpi = require('beautiful').xresources.apply_dpi
local clientKeys =
awful.util.table.join(
-- toggle fullscreen
awful.key(
{modkey},
'f',
function(c)
-- Toggle fullscreen
c.fullscreen = not c.fullscreen
c:raise()
end,
{description = 'toggle fullscreen', group = 'client'}
),
-- close client
awful.key(
{modkey},
'c',
function(c)
c:kill()
end,
{description = 'close', group = 'client'}
),
-- Default client focus
awful.key(
{modkey},
'd',
function()
awful.client.focus.byidx(1)
end,
{description = 'focus next by index', group = 'client'}
),
awful.key(
{modkey},
'a',
function()
awful.client.focus.byidx(-1)
end,
{description = 'focus previous by index', group = 'client'}
),
awful.key(
{ modkey, "Shift" },
"d",
function ()
awful.client.swap.byidx(1)
end,
{description = "swap with next client by index", group = "client"}
),
awful.key(
{ modkey, "Shift" },
"a",
function ()
awful.client.swap.byidx(-1)
end,
{description = "swap with next client by index", group = "client"}
),
awful.key(
{modkey},
'u',
awful.client.urgent.jumpto,
{description = 'jump to urgent client', group = 'client'}
),
awful.key(
{modkey},
'Tab',
function()
awful.client.focus.history.previous()
if client.focus then
client.focus:raise()
end
end,
{description = 'go back', group = 'client'}
),
awful.key(
{modkey},
'n',
function(c)
c.minimized = true
end,
{description = "minimize client", group = 'client'}
),
-- move floating client to center
awful.key(
{ modkey, "Shift" },
"c",
function(c)
local focused = awful.screen.focused()
awful.placement.centered(c, {
honor_workarea = true
})
end,
{description = 'align a client to the center of the focused screen.', group = "client"}
),
-- toggle client floating mode
awful.key(
{modkey},
'c',
function(c)
c.fullscreen = false
c.maximized = false
c.floating = not c.floating
c:raise()
end,
{description = 'toggle floating', group = 'client'}
),
-- move client position
awful.key(
{modkey},
'Up',
function(c)
if c.floating then
c:relative_move(0, dpi(-10), 0, 0)
end
end,
{description = 'move floating client up by 10 px', group = 'client'}
),
awful.key(
{modkey},
'Down',
function(c)
if c.floating then
c:relative_move(0, dpi(10), 0, 0)
end
end,
{description = 'move floating client down by 10 px', group = 'client'}
),
awful.key(
{modkey},
'Left',
function(c)
if c.floating then
c:relative_move(dpi(-10), 0, 0, 0)
end
end,
{description = 'move floating client to the left by 10 px', group = 'client'}
),
awful.key(
{modkey},
'Right',
function(c)
if c.floating then
c:relative_move(dpi(10), 0, 0, 0)
end
end,
{description = 'move floating client to the right by 10 px', group = 'client'}
),
-- Increasing floating client size
awful.key(
{modkey, 'Shift'},
'Up',
function(c)
if c.floating then
c:relative_move(0, dpi(-10), 0, dpi(10))
end
end,
{description = 'increase floating client size vertically by 10 px up', group = 'client'}
),
awful.key(
{modkey, 'Shift'},
'Down',
function(c)
if c.floating then
c:relative_move(0, 0, 0, dpi(10))
end
end,
{description = 'increase floating client size vertically by 10 px down', group = 'client'}
),
awful.key(
{modkey, 'Shift'},
'Left',
function(c)
if c.floating then
c:relative_move(dpi(-10), 0, dpi(10), 0)
end
end,
{description = 'increase floating client size horizontally by 10 px left', group = 'client'}
),
awful.key(
{modkey, 'Shift'},
'Right',
function(c)
if c.floating then
c:relative_move(0, 0, dpi(10), 0)
end
end,
{description = 'increase floating client size horizontally by 10 px right', group = 'client'}
),
-- Decreasing floating client size
awful.key(
{modkey, 'Control'},
'Up',
function(c)
if c.floating and c.height > 10 then
c:relative_move(0, 0, 0, dpi(-10))
end
end,
{description = 'decrease floating client size vertically by 10 px up', group = 'client'}
),
awful.key(
{modkey, 'Control'},
'Down',
function(c)
if c.floating then
local c_height = c.height
c:relative_move(0, 0, 0, dpi(-10))
if c.height ~= c_height and c.height > 10 then
c:relative_move(0, dpi(10), 0, 0)
end
end
end,
{description = 'decrease floating client size vertically by 10 px down', group = 'client'}
),
awful.key(
{modkey, 'Control'},
'Left',
function(c)
if c.floating and c.width > 10 then
c:relative_move(0, 0, dpi(-10), 0)
end
end,
{description = 'decrease floating client size horizontally by 10 px left', group = 'client'}
),
awful.key(
{modkey, 'Control'},
'Right',
function(c)
if c.floating then
local c_width = c.width
c:relative_move(0, 0, dpi(-10), 0)
if c.width ~= c_width and c.width > 10 then
c:relative_move(dpi(10), 0 , 0, 0)
end
end
end,
{description = 'decrease floating client size horizontally by 10 px right', group = 'client'}
)
)
return clientKeys

View file

@ -139,7 +139,7 @@ local function set_wallpaper(s)
if type(wallpaper) == "function" then
wallpaper = wallpaper(s)
end
gears.wallpaper.centered(wallpaper, s, "#282a36")
gears.wallpaper.maximized(wallpaper, s)
end
end
@ -154,6 +154,9 @@ awful.screen.connect_for_each_screen(function(s)
-- Each screen has its own tag table.
awful.tag({ "", "", "", ""}, s, awful.layout.layouts[1])
s.padding = {
bottom = dpi(20)
}
yoffset = dpi(45)
xoffset = dpi(18)
@ -448,7 +451,23 @@ awful.keyboard.append_global_keybindings({
awful.key({}, "XF86AudioPrev", function()
awful.util.spawn("playerctl previous", false)
end),
-- Mute Microphone
awful.key({}, "XF86Launch8", function()
awful.util.spawn("amixer -c 2 set Mic toggle", false)
end),
awful.key({}, "XF86Launch7", function()
awful.util.spawn("", false)
end),
awful.key({}, "XF86Launch6", function()
awful.util.spawn("", false)
end),
awful.key({}, "XF86Launch5", function()
awful.util.spawn("", false)
end),
awful.key({}, "XF86Tools", function()
awful.util.spawn("", false)
end),
-- Brightness Keys
awful.key({}, "XF86MonBrightnessUp", function()
awful.util.spawn("brightnessctl set +10%", false)
@ -614,6 +633,7 @@ root.keys(globalkeys)
-- }}}
-- {{{ Signals
-- Signal function to execute when a new client appears.
client.connect_signal("manage", function (c)
@ -631,27 +651,6 @@ client.connect_signal("manage", function (c)
ruled.client.apply(c)
end)
-- Enable sloppy focus, so that focus follows mouse.
-- client.connect_signal("mouse::enter", function(c)
-- c:emit_signal("request::activate", "mouse_enter", {raise = false})
-- end)
-- Enable nice titlebars
-- nice()
client.connect_signal("focus", function(c) c.border_color = beautiful.border_focus end)
client.connect_signal("unfocus", function(c) c.border_color = beautiful.border_normal end)
-- }}}
-- {{{ Autostart Applications
-- awful.spawn.with_shell("picom --experimental-backend")
-- awful.spawn.with_shell("libinput-gestures-setup start")
-- awful.spawn.with_shell("flameshot")
-- awful.spawn.with_shell("xset r rate 220 90")
-- awful.spawn.with_shell("feh --bg-fill ~/Pictures/wallpapers/RoyalKing.png")
-- awful.spawn.with_shell("/usr/lib/polkit-kde-authentication-agent-1")
-- awful.spawn.with_shell("emacs -daemon")
-- awful.spawn.with_shell("nextcloud --background")
-- awful.spawn.with_shell("caffeine")
-- }}}

View file

@ -1,6 +1,5 @@
(local awful (require "awful"))
(local beautiful (require "beautiful"))
(local keybindings (require "keys"))
(local
rules

View file

@ -31,7 +31,7 @@ theme.fg_minimize = "#e2e4e5"
theme.red = "#ff5c57"
theme.useless_gap = dpi(16)
theme.useless_gap = dpi(6)
theme.border_width = dpi(0)
theme.transparent = "#00000000"
theme.border_normal = "#00000000"

42
espanso/default.yml Normal file
View file

@ -0,0 +1,42 @@
# espanso configuration file
# This is the default configuration file, change it as you like it
# You can refer to the official documentation:
# https://espanso.org/docs/
# Matches are the substitution rules, when you type the "trigger" string
# it gets replaced by the "replace" string.
matches:
# Simple text replacement
- trigger: ":espanso"
replace: "Hi there!"
# Dates
- trigger: ":date"
replace: "{{mydate}}"
vars:
- name: mydate
type: date
params:
format: "%m/%d/%Y"
# Shell commands
- trigger: ":shell"
replace: "{{output}}"
vars:
- name: output
type: shell
params:
cmd: "echo Hello from your shell"
- trigger: "gml"
replace: "ccochrun21@gmail.com"
- trigger: "otl"
replace: "chris.cochrun@outlook.com"
- trigger: "tfcml"
replace: "chris@tfcconnection.org"
- trigger: ":name"
replace: "Chris Cochrun"

View file

@ -10,6 +10,74 @@
#urlbar-container{ min-width:unset !important }
}
/* Transparent tabs */
.toolbar-items:-moz-lwtheme-darktext,
.toolbar-items:-moz-lwtheme-brighttext {
background-color: transparent !important;
-moz-appearance: var(--bf-moz-appearance) !important;
}
/* Stretch Tabs */
.tabbrowser-tab[fadein]:not([pinned]) {
max-width: none !important;
}
.tab-background:-moz-lwtheme-darktext,
.tab-background:-moz-lwtheme-brighttext {
background: transparent !important;
-moz-appearance: var(--bf-moz-appearance) !important;
}
.tab-background[selected="true"] {
background: var(--bf-tab-selected-bg) !important;
}
.tab-background:not[visuallyselected] {
background: var(--bf-tab-selected-bg) !important;
opacity: 0.5 !important;
}
/* Style all the lines before and after selected tab */
.tabbrowser-tab::after,
.tabbrowser-tab::before {
border-width: 1px !important;
}
.tabbrowser-arrowscrollbox {
margin-inline-start: 4px !important;
margin-inline-end: 0 !important;
}
/* Center all content */
.tab-content {
justify-content: center;
align-items: center;
margin-top: -1px;
min-width: 100% !important;
padding: 0 10px !important;
}
/* A way to center the label and icon while
the close button is positioned to the far right */
.tab-content::before{
content: "";
display: -moz-box;
-moz-box-flex: 1
}
/* Tab close button */
.tab-close-button {
opacity: 1 !important;
}
/* If tab close button is not present, don't force favicon to the center */
#tabbrowser-tabs[closebuttons="activetab"] .tabbrowser-tab:not([selected="true"]) .tab-throbber,
#tabbrowser-tabs[closebuttons="activetab"] .tabbrowser-tab:not([selected="true"]) .tab-throbber-fallback,
#tabbrowser-tabs[closebuttons="activetab"] .tabbrowser-tab:not([selected="true"]):not([busy]) .tab-icon-image,
#tabbrowser-tabs[closebuttons="activetab"] .tabbrowser-tab:not([selected="true"]):not([image]) .tab-label-container {
margin-left: 0 !important;
}
#toolbar-menubar{ height:initial !important; }
#toolbar-menubar[inactive] > #menubar-items{ opacity: 0; pointer-events: none; }
@ -19,15 +87,6 @@
height: calc(var(--uc-toolbar-height) - 5) !important;
}
#TabsToolbar > .titlebar-buttonbox-container,
#TabsToolbar > .toolbar-items > spacer,
.titlebar-spacer[type="post-tabs"]{
display: none;
visibility: none;
max-height: 20px !important;
max-width: 20px;
}
#tabs-newtab-button {
visibility: hidden !important;
}
@ -41,6 +100,7 @@
font-size: 13px !important;
z-index: 10;
}
#toolbar-menubar[autohide="true"] > .titlebar-buttonbox-container,
#tabbrowser-tabs,
.tabbrowser-tab[pinned]{

View file

@ -1,8 +1,85 @@
/* Color controls for theme_***.css files */
:root {
--uc-dark-bkgnd-color: #2b2b2b;
--uc-light-bkgnd-color: rgb(24, 24, 24);
--uc-active-color: rgb(59, 59, 59);
--uc-text-color: rgb(228, 228, 228);
--uc-border-color: rgb(172, 172, 172);
/* All the CSS variables here are global */
/* These applies to all colorschemes */
/* If windows - `-moz-win-glass`, if macOS - `-moz-mac-vibrancy-dark` */
--bf-moz-appearance: -moz-win-glass !important;
--bf-backdrop-blur: 6px;
--bf-sidebar-searchbar-radius: 6px;
--bf-accent-bg: #9aedfeCC;
--bf-blank-page-bg: #282a36;
--bf-urlbar-hightlight-bg: var(--bf-accent-bg);
--bf-urlbar-radius: 9px;
--bf-urlbar-results-font-size: 12pt;
--bf-urlbar-results-font-weight: 550;
--bf-urlbar-font-size: 12pt;
--bf-urlbar-font-weight: 500;
--bf-urlbar-switch-tab-color: #57c7ff;
--bf-urlbar-bookmark-color: #5af78e;
--bf-navbar-padding: 6px;
--bf-tab-selected-bg: #34353e88;
--bf-tab-font-size: 11pt;
--bf-tab-font-weight: 400;
--bf-tab-height: 36px;
--bf-tab-border-radius: 6px;
--bf-tab-soundplaying-bg: #ff6ac1CC;
/*--toolbar-bgcolor: transparent !important;
--urlbar-separator-color: transparent !important;*/
}
/* Light Mode */
:root:-moz-lwtheme-darktext {
--bf-main-window: transparent;
--bf-bg: #F2F2F266;
--bf-color: #0A0A0A;
--bf-hover-bg: #1A1A1A33;
--bf-active-bg: #1A1A1A66;
--bf-icon-color: #0A0A0A;
--bf-tab-toolbar-bg: #F2F2F2AA;
--bf-tab-selected-bg: #00000022;
--bf-navbar-bg: var(--bf-bg);
--bf-urlbar-bg: var(--bf-bg);
--bf-urlbar-active-bg: var(--bf-bg);
--bf-urlbar-focused-color: var(--bf-color);
--bf-sidebar-bg: var(--bf-bg);
--bf-sidebar-color: var(--bf-color);
--bf-menupopup-bg: #F2F2F2AA;
--bf-menupopup-color: var(--bf-color);
}
/* Dark Mode */
:root:-moz-lwtheme-brighttext {
--bf-main-window: transparent;
--bf-bg: #282a3666;
--bf-color: #e2e4e5;
--bf-hover-bg: #34353e33;
--bf-active-bg: #eff0eb66;
--bf-icon-color: #eff0eb;
--bf-tab-toolbar-bg: #282a36AA;
--bf-tab-selected-bg: #e2e4e510;
--bf-navbar-bg: var(--bf-bg);
--bf-urlbar-bg: var(--bf-bg);
--bf-urlbar-active-bg: var(--bf-bg);
--bf-urlbar-focused-color: var(--bf-color);
--bf-sidebar-bg: var(--bf-bg);
--bf-sidebar-color: var(--bf-color);
--bf-menupopup-bg: #282a36AA;
--bf-menupopup-color: var(--bf-color);
}

View file

@ -1,52 +1,9 @@
/* Example file enabling theme + some features */
/* material firefox imports */
/* @import "global/variables.css"; */
/* @import "global/global.css"; */
/* @import "icons/icons.css"; */
/* @import "tabbar/tabbar.css"; */
/* @import "navbar/navbar.css"; */
/* @import "personalbar/personalbar.css"; */
/* @import "popup/popup.css"; */
/* @import "urlbar/urlbar.css"; */
/* @import "findbar/findbar.css"; */
/*@import url(chrome/theme_color_variables.css);
@import url(chrome/theme_toolbars.css);
@import url(chrome/theme_sidebar.css);
@import url(chrome/theme_popups_and_menus.css);
@import url(chrome/theme_additional_windows.css);*/
/* @import url(chrome/status_inside_urlbar.css); */
/*@import url(chrome/navigation_buttons_inside_urlbar.css);*/
@import url(chrome/tab_close_button_always_on_hover.css);
@import url(chrome/button_effect_scale_onclick.css);
@import url(chrome/blank_page_background.css);
/* @import url(chrome/navbar_tabs_oneliner.css); */
@import url(chrome/theme_color_variables.css);
@import url(chrome/navbar_tabs_oneliner_tabs_on_left.css);
/* @import url(chrome/navbar_notabs.css); */
/* @import url(chrome/page_action_buttons_on_hover.css); */
@import url(chrome/autohide_sidebar.css);
@import url(chrome/menubar_in_toolbar.css);
@import url(chrome/hide_toolbox_top_bottom_borders.css);

View file

@ -6,11 +6,11 @@ set -q XDG_DATA_HOME
# Load Oh My Fish configuration.
source $OMF_PATH/init.fish
# vi mode - off so that emacs can still be in control without having 2 vi modes
# fish_vi_key_bindings
# variables
# set -x GOPATH=$HOME/dev/go
# set -x PATH=$PATH:/usr/local/dev/go/bin
# set -x PATH=$PATH:/home/chris/.config/polybar
set -x PATH {/bin,/usr/bin,/home/chris/.dotfiles,/home/chris/.emacs.d/bin}
set -x PATH {/bin,/usr/bin,/home/chris/.dotfiles,/home/chris/.emacs.d/bin,/home/chris/scripts}
set -x QT_QPA_PLATFORMTHEME "qt5ct"
set -x EDITOR "emacsclient -a emacs"
set -x TERM alacritty
@ -18,3 +18,4 @@ set -x TERM alacritty
# aliases
alias ls="lsd -a"
alias rfi="/home/chris/.dotfiles/rofi/launchers-git/launcher.sh"
alias scl="pkexec systemctl "

4
mpv/mpv.conf Normal file
View file

@ -0,0 +1,4 @@
# Use GPU-accelerated video output by default
vo=gpu
af=scaletempo2
speed=2

View file

@ -9,7 +9,7 @@
*/
configuration {
font: "VictorMono Nerd Font 38.0";
font: "VictorMono Nerd Font 22.0";
show-icons: true;
icon-theme: "Papirus";
display-drun: " ";

13
scripts/drvid.fish Executable file
View file

@ -0,0 +1,13 @@
#!/usr/bin/env fish
mkdir transcoded
for vid in *.mp4
touch $vid.txt
echo $vid >>$vid.txt
set newvid (sed "s/\.mp4//g" $vid.txt)
echo $newvid
ffmpeg -i $vid -c:v dnxhd -profile:v 3 -qscale:v 9 -c:a pcm_s16le $newvid.mov
mv $newvid.mov ./transcoded/$newvid.mov
rm $vid.txt
echo \n finished transcoding new file is in transcoded/$newvid.mov
end

15
scripts/lbrympv.fish Executable file
View file

@ -0,0 +1,15 @@
#!/usr/bin/fish
set arg (getopt -s sh : $argv)
set arg (fish -c "for el in $arg; echo \$el; end")
echo "arguments are: " $arg
for val in $arg
if test $val = "--"
echo "value in arg is: " $val
else
echo "value in arg is: " $val
mpv -(youtube-dl (curl $arg | rg embed | sed 's/.*embed\(.*\)">.*/\1/' | cut -d '"' -f1 | awk -v prefix="https://cdn.lbryplayer.xyz/api/v2/streams/free" '{print prefix $0}'))
end
end

15
scripts/lbryytdl.fish Executable file
View file

@ -0,0 +1,15 @@
#!/usr/bin/fish
set arg (getopt -s sh : $argv)
set arg (fish -c "for el in $arg; echo \$el; end")
echo "arguments are: " $arg
for val in $arg
if test $val = "--"
echo "value in arg is: " $val
else
echo "value in arg is: " $val
youtube-dl (curl $arg | rg embed | sed 's/.*embed\(.*\)">.*/\1/' | cut -d '"' -f1 | awk -v prefix="https://cdn.lbryplayer.xyz/api/v2/streams/free" '{print prefix $0}')
end
end

4
scripts/mailsync.sh Executable file
View file

@ -0,0 +1,4 @@
#!/usr/bin/sh
mbsync --all
mu index

View file

@ -11,6 +11,7 @@ set searchurls.y https://www.yewtu.be/search?q=
set searchurls.aw https://wiki.archlinux.org/index.php?search=
set searchurls.qt https://doc.qt.io/qt-5/search-results.html?q=
set searchurls.mel https://melpa.org/#/?q=
set searchurls.ser https://searx.xyz/?q=
set searchurls.fel https://felgo.com/search-results?q=
set searchurls.o https://www.office.com/search?auth=2&q=
set searchurls.wiki https://en.wikipedia.org/wiki/Special:Search/
@ -30,12 +31,12 @@ set searchurls.amazon https://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3
set searchurls.amazonuk https://www.amazon.co.uk/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=
set searchurls.startpage https://startpage.com/do/search?language=english&cat=web&query=
set searchurls.github https://github.com/search?utf8=✓&q=
set searchurls.searx https://searx.me/?category_general=on&q=
set searchurls.cnrtl http://www.cnrtl.fr/lexicographie/
set searchurls.osm https://www.openstreetmap.org/search?query=
set searchurls.mdn https://developer.mozilla.org/en-US/search?q=
set searchurls.gentoo_wiki https://wiki.gentoo.org/index.php?title=Special%3ASearch&profile=default&fulltext=Search&search=
set searchurls.qwant https://www.qwant.com/?q=
set searchengine ser
" For syntax highlighting see https://github.com/tridactyl/vim-tridactyl
" vim: set filetype=tridactyl
@ -43,4 +44,5 @@ set searchurls.qwant https://www.qwant.com/?q=
bind v hint -W mpvsafe
bind gc composite get_current_url | org-capture
command org-capture js -p tri.excmds.shellescape(JS_ARG).then(url => tri.excmds.exclaim_quiet('org-capture ' + url))
bind gC hint -W org-capture
command org-capture js -p tri.excmds.exclaim_quiet('org-capture ' + JS_ARG)