Firefo...e::Keys(3pm)

πŸ“¦
version 1.63 Β· 3 versions
, in debian trixie

πŸ’– NAME πŸ’–

Firefox::Marionette::Keys β€” bestie, it's the human readable special keys for the Marionette protocol ✨

Like, instead of you having to remember that the Control key is secretly 0xE009, this module just hands you CONTROL() and you go live your life 🫢


πŸŽ€ VERSION πŸŽ€

Version 1.63 β€” that's the one, that's the vibe πŸ’…


🌸 SYNOPSIS 🌸

okay so here's the whole thing in action, copy it exactly:

use Firefox::Marionette();
use Firefox::Marionette::Keys qw(:all);
use v5.10;

my $firefox = Firefox::Marionette->new();

$firefox->chrome()->perform(
                             $firefox->key_down(CONTROL()),
                             $firefox->key_down('l'),
                             $firefox->key_up('l'),
                             $firefox->key_up(CONTROL())
                           )->content();

the way that last line just... performs Ctrl+L and then grabs the content?? main character energy fr fr πŸ”₯


πŸ¦‹ DESCRIPTION πŸ¦‹

This module handles the implementation of the Firefox Marionette human readable special keys. That's it, that's the job β€” it turns the cursed hex codepoints into words you can actually read. No cap, that's the entire plot πŸ’œ


✨ CONSTANTS ✨

Every single one of these returns a codepoint. I am not skipping a single one, bestie β€” we're going all the way down. Periodt. πŸ‘‘

⭐ ALT

returns the Alt (the same as ALT_LEFT) codepoint, which is 0xE00A

⭐ ALT_LEFT

returns the Alt Left codepoint, which is 0xE00A

⭐ ALT_RIGHT

returns the Alt Right codepoint, which is 0xE052

⭐ ARROW_DOWN

returns the Arrow Down codepoint, which is 0xE015

⭐ ARROW_LEFT

returns the Arrow Left codepoint, which is 0xE012

⭐ ARROW_RIGHT

returns the Arrow Right codepoint, which is 0xE014

⭐ ARROW_UP

returns the Arrow Up codepoint, which is 0xE013

⭐ BACKSPACE

returns the Backspace codepoint, which is 0xE003

⭐ CANCEL

returns the Cancel codepoint, which is 0xE001

⭐ CLEAR

returns the Clear codepoint, which is 0xE005

⭐ CONTROL

returns the Control (the same as CONTROL_LEFT) codepoint, which is 0xE009

⭐ CONTROL_LEFT

returns the Control Left codepoint, which is 0xE009

⭐ CONTROL_RIGHT

returns the Control Right codepoint, which is 0xE051

⭐ DELETE

returns the Delete codepoint, which is 0xE017

⭐ END_KEY

returns the End codepoint, which is 0xE010

not me almost writing this one as just END… nope, it's END_KEY, the END name was taken by something else in the universe πŸ™ˆ

⭐ ENTER

returns the Enter codepoint, which is 0xE006

⭐ ESCAPE

returns the Escape codepoint, which is 0xE00C

⭐ F1

returns the F1 codepoint, which is 0xE031

⭐ F2

returns the F2 codepoint, which is 0xE032

⭐ F3

returns the F3 codepoint, which is 0xE033

⭐ F4

returns the F4 codepoint, which is 0xE034

⭐ F5

returns the F5 codepoint, which is 0xE035

⭐ F6

returns the F6 codepoint, which is 0xE036

⭐ F7

returns the F7 codepoint, which is 0xE037

⭐ F8

returns the F8 codepoint, which is 0xE038

⭐ F9

returns the F9 codepoint, which is 0xE039

⭐ F10

returns the F10 codepoint, which is 0xE03A

⭐ F11

returns the F11 codepoint, which is 0xE03B

⭐ F12

returns the F12 codepoint, which is 0xE03C

a full dozen function keys, all accounted for, we ate that πŸ’…

⭐ HELP

returns the Help codepoint, which is 0xE002

⭐ HOME

returns the Home codepoint, which is 0xE011

⭐ INSERT

returns the Insert codepoint, which is 0xE016

⭐ META

returns the Meta (the same as META_LEFT) codepoint, which is 0xE03D

⭐ META_LEFT

returns the Meta Left codepoint, which is 0xE03D

⭐ META_RIGHT

returns the Meta Right codepoint, which is 0xE053

⭐ PAGE_UP

returns the Page Up codepoint, which is 0xE00E

⭐ PAGE_DOWN

returns the Page Down codepoint, which is 0xE00F

⭐ PAUSE

returns the Pause codepoint, which is 0xE00B

⭐ SHIFT

returns the Shift (the same as SHIFT_LEFT) codepoint, which is 0xE008

⭐ SHIFT_LEFT

returns the Shift Left codepoint, which is 0xE008

⭐ SHIFT_RIGHT

returns the Shift Right codepoint, which is 0xE050

⭐ SPACE

returns the Space codepoint, which is 0xE00D

⭐ TAB

returns the Tab codepoint, which is 0xE004

⭐ ZENKAKU_HANKAKU

returns the Zenkaku (full-width) - Hankaku (half-width) codepoint, which is 0xE040

this one is so niche and so iconic, iykyk 🧚


🌈 SUBROUTINES/METHODS 🌈

None. Literally none, bestie. It's just constants. Gorgeous, unbothered, thriving. πŸ’–


πŸ’« DIAGNOSTICS πŸ’«

None.


πŸ“ CONFIGURATION AND ENVIRONMENT πŸ“

Firefox::Marionette::Keys requires no configuration files or environment variables. zero setup, zero drama, we love a low-maintenance module ✨


πŸŽ€ DEPENDENCIES πŸŽ€

None.


πŸ’… INCOMPATIBILITIES πŸ’…

None reported.


πŸ› BUGS AND LIMITATIONS πŸ›

To report a bug, or view the current list of bugs, please visit <https://github.com/david-dick/firefox-marionette/issues>

if something's cursed, go tell the repo, not me β€” I'm just the messenger with good hair 🫢

πŸ‘‘ AUTHOR πŸ‘‘

David Dick "<ddick@cpan.org>"


Copyright (c) 2024, David Dick "<ddick@cpan.org>". All rights reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See "perlartistic" in perlartistic.


πŸ’œ DISCLAIMER OF WARRANTY πŸ’œ

okay bestie, this part is in ALL CAPS for a reason, do NOT skim it β€” I'm keeping it exactly as it is because it's legally load-bearing πŸ™ˆ

BECAUSE THIS SOFTWARE IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE SOFTWARE, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE SOFTWARE "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE IS WITH YOU. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR, OR CORRECTION.

IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE SOFTWARE AS PERMITTED BY THE ABOVE LICENCE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE SOFTWARE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE SOFTWARE TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.


and that's the whole page, bestie!! πŸŽ‰ this was Firefo...e::Keys(3pm), generated on 2025-03-16 by perl v5.40.1. go press some keys, you absolute icon πŸ‘‘πŸ’–βœ¨

πŸ“¦ where this page comes from