From 5006fde8a5e3dc8beaf3e26941100a6c20de1fd5 Mon Sep 17 00:00:00 2001 From: Firepup Sixfifty Date: Wed, 17 Nov 2021 15:58:36 +0000 Subject: [PATCH] v.0.0.1 --- package/README.md | 5 +++ .../dist/fkeycapture-Firepup650-0.0.1.tar.gz | Bin 0 -> 2803 bytes ...ycapture_Firepup650-0.0.1-py3-none-any.whl | Bin 0 -> 3270 bytes package/setup.cfg | 14 ++++--- package/src/fkeycapture/__init__.py | 0 package/src/fkeycapture/fkeycapture.py | 37 ++++++++++++++++++ .../fkeycapture_Firepup650.egg-info/PKG-INFO | 28 +++++++++++++ .../SOURCES.txt | 10 +++++ .../dependency_links.txt | 1 + .../top_level.txt | 1 + 10 files changed, 91 insertions(+), 5 deletions(-) create mode 100644 package/dist/fkeycapture-Firepup650-0.0.1.tar.gz create mode 100644 package/dist/fkeycapture_Firepup650-0.0.1-py3-none-any.whl create mode 100644 package/src/fkeycapture/__init__.py create mode 100644 package/src/fkeycapture/fkeycapture.py create mode 100644 package/src/fkeycapture_Firepup650.egg-info/PKG-INFO create mode 100644 package/src/fkeycapture_Firepup650.egg-info/SOURCES.txt create mode 100644 package/src/fkeycapture_Firepup650.egg-info/dependency_links.txt create mode 100644 package/src/fkeycapture_Firepup650.egg-info/top_level.txt diff --git a/package/README.md b/package/README.md index e69de29..14b0660 100644 --- a/package/README.md +++ b/package/README.md @@ -0,0 +1,5 @@ +# fkeycapture +This is a simple and easy to use package that allows you to capture individual keystrokes from the user. +#### Forms: +1. (Default) Recive key as a string +2. Recive key as bytes \ No newline at end of file diff --git a/package/dist/fkeycapture-Firepup650-0.0.1.tar.gz b/package/dist/fkeycapture-Firepup650-0.0.1.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..28034e6f399b6301aa06a8c5c12b7ce8542b47ac GIT binary patch literal 2803 zcmai#`8yPP1H~m2M*;+Ao%NFSfLCD(NGig3`)IPw!t!WU-g z5An~Tw6@jwOC<$And{T?wAkN`Q9jYXLJbrB-V!6^8+OKzEF7iJ?8olVISj|7}K=7-p%Fh(Ar?n-qq`G#_ma5b3MPlKa2+n<-mc)mrWc$L&4RMAi4|`4qoAxLpglRa$yl6dCA`N*{ zebDTv80uu(_)hm+mVnPCddLh)Q-czvd!V&E{ywqGO~&^|YCQZ|GH2}5vr!ohLm{$` zu@d^G9Z$B2r#*5PSyHELG`7^dvy1rf?gk=CU1D-@*1K;GH9WgPLL6I7W&}w&*~$3&G5!M202!ryT|y0rjLmx z{*0Th$Ea?%47L6>n6PPe`{?h4SPvEs>r?c(j1=BzA0Ku=X={YByWJ~QIb>TBEbihC zFS}5rF*F5{AE^CaBgqUN`la#UXNnUbTWJzzIT(Uc1UKPj)ic5v(es3xD;R|rjy~3# z?2s}3rb-B6G+!;+iwA=$s%C~s`?}Jj#csXAe5)6+pz$f@;+x8eVj3(of9jZ>& zASi5W$G=QN%O&@C3%)*$8dBpHk!K#d@jyL+ReKlz$xD`|2X?)@ndH5@OgvW+xghdy zfhOa8Hza#S#;GYsuUsU>a;s8v)I_g%SSV z9WAZvI}=^thiloliy*9%1?dF#FMwc}_VcTI2<5{L+By#gFD`he=he*YH!%g}B&0Yo z;=I<%E>C;$W7Opv!?q%=8|Q_(zrNRS=nyNDCUBHY1%7ll;^yX0Zr<@FrnJW!q?;?f zNsi}5AqP}$nWlac*Ckq^aP!V%C=@{&bbGjCoMRlV1tAl=olFO^N*UKZ7gW4g}OHW?Q0H>8w$Q&5$Wk`1qWDzPrnPLIx^V?*ch6j^CT}Zqmk~ z`YT?mjult`)7)kKA^n09uWgIpr&aYRNMfs6k+pHYqSa@2lF4wdVSRVk^iI~hdC4B~ zVyn>ifNq6vayj^Z6Q+Ltr4aYj#_(vkNuWg_^@GSvdDGq;!%N2|@D+Esf9;AGva;+r z+Z&nwbjo0CKP2eR*%JPTc(<-!Qb zyCXlLcezBq$?%C4VY_4es+}@nNNI zyc>&VX$x5R*`YDdS|!#L+Qhw!EVN14lZ}xzmewyWb2!@Q+!+&yme8W0vmzMh{>|@XsH_j zN86mGDTP3qM-Haf=#}l(w{goYJ*+oOX@)5!l>~e?@CuA+tNL7)5fw;R0V}{Bb0rt;@>j8ERK?D^O;7+w36}tx7sV&=&`Jt3a zh6t%*kAWuTocawK1Soo2Gdh7=G<5cu%bKBfvF=|3`BgIEGmtCuA4Pg|spmQ$Ge+Qn zQbd`D8!vrut?!Zso2oQdm9Qy;shnjR<8zQYl6f0^Sq)nyo>!_Ztd?2HR(!TS7dq=ChPVDN|(m@lKb8(#{ zwQB2F%$0-|>QdY4a#!NsIhKQ0yivVMx%vsK)saa1w0qAkz4V7DM4S03A6zR7KG9Q% zx@MAx5@eFM9{+qo5A5=_lPNg&(BYvAsa>$NA%WyzS%+E$!=<^n7)%hpg|s-hxVTOX z@XU|b7^%=0vD<8O7}ixUFD`}^ZuQ?JFOTW1GtJa)5#Rn)us8ln$_*K>eobqzlO;t> z4oMop!|%VCD~=KF*r=%UZGKNrH4e2mrrL$L9$&uAtLRASThUJC(BX&Z1d_ZNGl)LK zCM43XJYZX5j$}i4ocmVQ%{!VQFrQd~Xaq$}H0i&137pS>)VDmUS;pi!>ic-8V#)v& zTpiGh1k&pujX6zanYx01?_>=mt%KuJd^KAPGzJd!257nKn*g^Dh8XBSOvG7WerU8M z(uuy%jjoOG*i*M(!qTUc0c@Rcz(DI?!pyb!wN6ebU`yc5sh*Q7GL*cDwNBxP>|}Pn*V-E2y#e+RK}W}7hXKOfR&y7G*VVJ^ZGAKnHF0Mr7sZrpA;u=!^Lcpu}~2KLRY8uBro|F32V8e%S2>I>T^Hn#r( D$K$$I literal 0 HcmV?d00001 diff --git a/package/dist/fkeycapture_Firepup650-0.0.1-py3-none-any.whl b/package/dist/fkeycapture_Firepup650-0.0.1-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..f686c1b037be77b5b40b6188e0caa7683b7eb9bf GIT binary patch literal 3270 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 literal 0 HcmV?d00001 diff --git a/package/setup.cfg b/package/setup.cfg index 4402857..ceb8f7d 100644 --- a/package/setup.cfg +++ b/package/setup.cfg @@ -1,19 +1,23 @@ [metadata] -name = fkeycapture-ALEXANDERMAPLES +name = fkeycapture-Firepup650 version = 0.0.1 -author = ALEXANDERMAPLES +author = Firepup650 author_email = firepyp650@gmail.com description = A way to capture keystrokes long_description = file: README.md long_description_content_type = text/markdown -url = https://github.com/pypa/sampleproject +url = https://github.com/Alexander-Maples/fkeycapture project_urls = - Bug Tracker = https://github.com/pypa/sampleproject/issues - Main = https://replit.com/@ALEXANDERMAPLES/fkeycapture + Bug Tracker = https://github.com/Alexander-Maples/fkeycapture/issues + replit = https://replit.com/@ALEXANDERMAPLES/fkeycapture classifiers = Programming Language :: Python :: 3 License :: OSI Approved :: MIT License Operating System :: OS Independent + Development Status :: 4 - Beta + Environment :: Console + Intended Audience :: Developers + Natural Language :: English [options] package_dir = diff --git a/package/src/fkeycapture/__init__.py b/package/src/fkeycapture/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/package/src/fkeycapture/fkeycapture.py b/package/src/fkeycapture/fkeycapture.py new file mode 100644 index 0000000..876f27c --- /dev/null +++ b/package/src/fkeycapture/fkeycapture.py @@ -0,0 +1,37 @@ +import termios, fcntl, sys +fd = sys.stdin.fileno() +flags_save = fcntl.fcntl(fd, fcntl.F_GETFL) +attrs_save = termios.tcgetattr(fd) +def getp1(): + import termios, fcntl, sys, os + fd = sys.stdin.fileno() + # save old state + flags_save = fcntl.fcntl(fd, fcntl.F_GETFL) + attrs_save = termios.tcgetattr(fd) + # make raw - the way to do this comes from the termios(3) man page. + attrs = list(attrs_save) # copy the stored version to update + # iflag + attrs[0] &= ~(termios.IGNBRK | termios.BRKINT | termios.PARMRK + | termios.ISTRIP | termios.INLCR | termios. IGNCR + | termios.ICRNL | termios.IXON ) + # oflag + attrs[1] &= ~termios.OPOST + # cflag + attrs[2] &= ~(termios.CSIZE | termios. PARENB) + attrs[2] |= termios.CS8 + # lflag + attrs[3] &= ~(termios.ECHONL | termios.ECHO | termios.ICANON + | termios.ISIG | termios.IEXTEN) + termios.tcsetattr(fd, termios.TCSANOW, attrs) + # turn off non-blocking + fcntl.fcntl(fd, fcntl.F_SETFL, flags_save & ~os.O_NONBLOCK) +def getp2(): + termios.tcsetattr(fd, termios.TCSAFLUSH, attrs_save) + fcntl.fcntl(fd, fcntl.F_SETFL, flags_save) +def get(keycount=1,bytes=False): + getp1() + key = sys.stdin.read(keycount) + getp2() + if bytes == True: + key = key.encode() + return key \ No newline at end of file diff --git a/package/src/fkeycapture_Firepup650.egg-info/PKG-INFO b/package/src/fkeycapture_Firepup650.egg-info/PKG-INFO new file mode 100644 index 0000000..1f1644a --- /dev/null +++ b/package/src/fkeycapture_Firepup650.egg-info/PKG-INFO @@ -0,0 +1,28 @@ +Metadata-Version: 2.1 +Name: fkeycapture-Firepup650 +Version: 0.0.1 +Summary: A way to capture keystrokes +Home-page: https://github.com/Alexander-Maples/fkeycapture +Author: Firepup650 +Author-email: firepyp650@gmail.com +License: UNKNOWN +Project-URL: Bug Tracker, https://github.com/Alexander-Maples/fkeycapture/issues +Project-URL: replit, https://replit.com/@ALEXANDERMAPLES/fkeycapture +Platform: UNKNOWN +Classifier: Programming Language :: Python :: 3 +Classifier: License :: OSI Approved :: MIT License +Classifier: Operating System :: OS Independent +Classifier: Development Status :: 4 - Beta +Classifier: Environment :: Console +Classifier: Intended Audience :: Developers +Classifier: Natural Language :: English +Requires-Python: >=3.6 +Description-Content-Type: text/markdown +License-File: LICENSE + +# fkeycapture +This is a simple and easy to use package that allows you to capture individual keystrokes from the user. +#### Forms: +1. (Default) Recive key as a string +2. Recive key as bytes + diff --git a/package/src/fkeycapture_Firepup650.egg-info/SOURCES.txt b/package/src/fkeycapture_Firepup650.egg-info/SOURCES.txt new file mode 100644 index 0000000..08bb027 --- /dev/null +++ b/package/src/fkeycapture_Firepup650.egg-info/SOURCES.txt @@ -0,0 +1,10 @@ +LICENSE +README.md +pyproject.toml +setup.cfg +src/fkeycapture/__init__.py +src/fkeycapture/fkeycapture.py +src/fkeycapture_Firepup650.egg-info/PKG-INFO +src/fkeycapture_Firepup650.egg-info/SOURCES.txt +src/fkeycapture_Firepup650.egg-info/dependency_links.txt +src/fkeycapture_Firepup650.egg-info/top_level.txt \ No newline at end of file diff --git a/package/src/fkeycapture_Firepup650.egg-info/dependency_links.txt b/package/src/fkeycapture_Firepup650.egg-info/dependency_links.txt new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/package/src/fkeycapture_Firepup650.egg-info/dependency_links.txt @@ -0,0 +1 @@ + diff --git a/package/src/fkeycapture_Firepup650.egg-info/top_level.txt b/package/src/fkeycapture_Firepup650.egg-info/top_level.txt new file mode 100644 index 0000000..a083384 --- /dev/null +++ b/package/src/fkeycapture_Firepup650.egg-info/top_level.txt @@ -0,0 +1 @@ +fkeycapture