xrpn 1.2 → 1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +1 -5
- data/bin/xrpn +2 -1
- data/xcmd/abs +1 -0
- data/xcmd/acos +1 -0
- data/xcmd/adate +1 -0
- data/xcmd/adateiso +1 -0
- data/xcmd/add +1 -0
- data/xcmd/adv +1 -0
- data/xcmd/agsub +1 -0
- data/xcmd/aleng +1 -0
- data/xcmd/almcat +1 -0
- data/xcmd/almnow +1 -0
- data/xcmd/anum +1 -0
- data/xcmd/aoff +1 -0
- data/xcmd/aon +1 -0
- data/xcmd/appchr +1 -0
- data/xcmd/apprec +1 -0
- data/xcmd/arcl +1 -0
- data/xcmd/arcli +1 -0
- data/xcmd/arclrec +1 -0
- data/xcmd/arot +1 -0
- data/xcmd/ashf +1 -0
- data/xcmd/asin +1 -0
- data/xcmd/asroom +1 -0
- data/xcmd/asto +1 -0
- data/xcmd/asub +1 -0
- data/xcmd/atan +1 -0
- data/xcmd/atime +1 -0
- data/xcmd/atime24 +1 -0
- data/xcmd/atox +1 -0
- data/xcmd/aview +1 -0
- data/xcmd/aviewc +1 -0
- data/xcmd/beep +1 -0
- data/xcmd/bindec +1 -0
- data/xcmd/cat +1 -0
- data/xcmd/cf +1 -0
- data/xcmd/chs +2 -1
- data/xcmd/cla +2 -1
- data/xcmd/clalma +1 -0
- data/xcmd/clalmx +1 -0
- data/xcmd/cld +1 -0
- data/xcmd/clear +1 -0
- data/xcmd/clfl +2 -1
- data/xcmd/clk12 +2 -1
- data/xcmd/clk24 +2 -1
- data/xcmd/clkeys +1 -0
- data/xcmd/clock +1 -0
- data/xcmd/clp +1 -0
- data/xcmd/clralms +1 -0
- data/xcmd/clrg +2 -1
- data/xcmd/clrgx +2 -1
- data/xcmd/cls +2 -1
- data/xcmd/clst +2 -1
- data/xcmd/clx +2 -1
- data/xcmd/cmdadd +2 -1
- data/xcmd/cmddel +2 -1
- data/xcmd/cmdhelp +23 -0
- data/xcmd/correct +1 -0
- data/xcmd/cos +1 -0
- data/xcmd/crflas +2 -1
- data/xcmd/crfld +2 -1
- data/xcmd/cube +2 -1
- data/xcmd/d_r +2 -1
- data/xcmd/date +2 -1
- data/xcmd/dateplus +2 -1
- data/xcmd/ddate +2 -1
- data/xcmd/dec +2 -1
- data/xcmd/decbin +2 -1
- data/xcmd/dechex +2 -1
- data/xcmd/decoct +2 -1
- data/xcmd/deg +2 -1
- data/xcmd/degq +2 -1
- data/xcmd/delchr +2 -1
- data/xcmd/delrec +2 -1
- data/xcmd/divide +2 -1
- data/xcmd/dmy +2 -1
- data/xcmd/dot +1 -0
- data/xcmd/dow +2 -1
- data/xcmd/drop +2 -1
- data/xcmd/dropy +2 -1
- data/xcmd/dse +1 -0
- data/xcmd/ed +1 -0
- data/xcmd/emdir +2 -1
- data/xcmd/emdirx +2 -1
- data/xcmd/emroom +1 -0
- data/xcmd/end +1 -0
- data/xcmd/eng +1 -0
- data/xcmd/enter +2 -1
- data/xcmd/exp +2 -1
- data/xcmd/expx1 +2 -1
- data/xcmd/fact +2 -1
- data/xcmd/fc +1 -0
- data/xcmd/fcc +1 -0
- data/xcmd/fcs +1 -0
- data/xcmd/fix +1 -0
- data/xcmd/fixq +2 -1
- data/xcmd/flsize +1 -0
- data/xcmd/frc +2 -1
- data/xcmd/fs +1 -0
- data/xcmd/fsc +1 -0
- data/xcmd/fss +1 -0
- data/xcmd/geir +2 -1
- data/xcmd/getas +2 -1
- data/xcmd/getfile +2 -1
- data/xcmd/getfilea +2 -1
- data/xcmd/getkey +2 -1
- data/xcmd/getkeyx +2 -1
- data/xcmd/getp +2 -1
- data/xcmd/getr +2 -1
- data/xcmd/getrec +2 -1
- data/xcmd/getrx +2 -1
- data/xcmd/getsub +1 -0
- data/xcmd/getweb +2 -1
- data/xcmd/getx +2 -1
- data/xcmd/grad +2 -1
- data/xcmd/gsb +1 -0
- data/xcmd/gto +1 -0
- data/xcmd/help +2 -1
- data/xcmd/hexdec +2 -1
- data/xcmd/hms +2 -1
- data/xcmd/hmsminus +2 -1
- data/xcmd/hmsplus +2 -1
- data/xcmd/hr +2 -1
- data/xcmd/inschr +2 -1
- data/xcmd/insrec +2 -1
- data/xcmd/int +2 -1
- data/xcmd/invf +1 -0
- data/xcmd/isg +1 -0
- data/xcmd/lastx +2 -1
- data/xcmd/lbl +1 -0
- data/xcmd/lift +2 -1
- data/xcmd/ln +2 -1
- data/xcmd/ln1x +2 -1
- data/xcmd/log +1 -0
- data/xcmd/mdy +2 -1
- data/xcmd/mean +2 -1
- data/xcmd/mod +1 -0
- data/xcmd/multiply +1 -0
- data/xcmd/oct +2 -1
- data/xcmd/octdec +2 -1
- data/xcmd/off +2 -1
- data/xcmd/on +1 -0
- data/xcmd/p_r +2 -1
- data/xcmd/pack +1 -0
- data/xcmd/page +1 -0
- data/xcmd/pagedel +1 -0
- data/xcmd/pageq +2 -1
- data/xcmd/pageswap +2 -1
- data/xcmd/pasn +1 -0
- data/xcmd/pcat +2 -1
- data/xcmd/pclps +2 -1
- data/xcmd/percent +1 -0
- data/xcmd/percentch +1 -0
- data/xcmd/pi +2 -1
- data/xcmd/posa +2 -1
- data/xcmd/posfl +2 -1
- data/xcmd/pow +2 -1
- data/xcmd/pprg +2 -1
- data/xcmd/pprgx +1 -1
- data/xcmd/pra +2 -1
- data/xcmd/prflags +2 -1
- data/xcmd/prompt +2 -1
- data/xcmd/prp +2 -1
- data/xcmd/prregs +2 -1
- data/xcmd/prstk +2 -1
- data/xcmd/prx +2 -1
- data/xcmd/prxm +2 -1
- data/xcmd/pse +2 -1
- data/xcmd/psize +1 -0
- data/xcmd/purfl +2 -1
- data/xcmd/r_d +1 -0
- data/xcmd/r_p +2 -1
- data/xcmd/rad +2 -1
- data/xcmd/rand +2 -1
- data/xcmd/rcl +1 -0
- data/xcmd/rclaf +1 -0
- data/xcmd/rclflag +2 -1
- data/xcmd/rclpt +2 -1
- data/xcmd/rclpta +2 -1
- data/xcmd/rclsw +1 -0
- data/xcmd/rdn +2 -1
- data/xcmd/recip +1 -0
- data/xcmd/regmove +2 -1
- data/xcmd/regswap +2 -1
- data/xcmd/reload +2 -1
- data/xcmd/reszfl +1 -0
- data/xcmd/rnd +2 -1
- data/xcmd/root +2 -1
- data/xcmd/rtn +2 -1
- data/xcmd/rubycmd +2 -1
- data/xcmd/runsw +1 -0
- data/xcmd/rup +2 -1
- data/xcmd/saveas +2 -1
- data/xcmd/savep +2 -1
- data/xcmd/saver +2 -1
- data/xcmd/saverx +2 -1
- data/xcmd/savex +2 -1
- data/xcmd/savexm +2 -1
- data/xcmd/sci +1 -0
- data/xcmd/sdev +2 -1
- data/xcmd/seekpt +2 -1
- data/xcmd/seekpta +2 -1
- data/xcmd/sep +1 -0
- data/xcmd/setaf +1 -0
- data/xcmd/setsw +1 -0
- data/xcmd/sf +1 -0
- data/xcmd/shellcmd +2 -1
- data/xcmd/sign +2 -1
- data/xcmd/sin +1 -0
- data/xcmd/size +1 -0
- data/xcmd/sizeq +1 -0
- data/xcmd/sminus +1 -0
- data/xcmd/splus +1 -0
- data/xcmd/sqr +2 -1
- data/xcmd/sqrt +2 -1
- data/xcmd/sreg +1 -0
- data/xcmd/sregq +2 -1
- data/xcmd/stdivide +1 -0
- data/xcmd/stmultiply +1 -0
- data/xcmd/sto +1 -0
- data/xcmd/stoflag +2 -1
- data/xcmd/stop +2 -1
- data/xcmd/stopsw +1 -0
- data/xcmd/stplus +1 -0
- data/xcmd/stsubtract +1 -0
- data/xcmd/subtract +1 -0
- data/xcmd/sw +1 -0
- data/xcmd/swap +2 -1
- data/xcmd/swpt +1 -0
- data/xcmd/tan +1 -0
- data/xcmd/tenx +2 -1
- data/xcmd/time +2 -1
- data/xcmd/tx +1 -0
- data/xcmd/version +1 -0
- data/xcmd/view +1 -0
- data/xcmd/writefile +2 -1
- data/xcmd/xeq +1 -0
- data/xcmd/xeq0 +2 -1
- data/xcmd/xeqnn +2 -1
- data/xcmd/xeqy +2 -1
- data/xcmd/xf +1 -0
- data/xcmd/xgt0 +2 -1
- data/xcmd/xgteq0 +2 -1
- data/xcmd/xgteqnn +2 -1
- data/xcmd/xgteqy +2 -1
- data/xcmd/xgtnn +2 -1
- data/xcmd/xgty +2 -1
- data/xcmd/xlt0 +2 -1
- data/xcmd/xlteq0 +2 -1
- data/xcmd/xlteqnn +2 -1
- data/xcmd/xlteqy +2 -1
- data/xcmd/xltnn +2 -1
- data/xcmd/xlty +2 -1
- data/xcmd/xmexistq +2 -1
- data/xcmd/xmfileq +2 -1
- data/xcmd/xneq0 +2 -1
- data/xcmd/xneqnn +2 -1
- data/xcmd/xneqy +2 -1
- data/xcmd/xnn +1 -0
- data/xcmd/xtoa +2 -1
- data/xcmd/xy +2 -1
- data/xcmd/xyzalm +1 -0
- data/xlib/_xrpn_version +1 -1
- data/xlib/debug_mode +2 -18
- data/xlib/read_xcmd +4 -4
- data/xrpn.gemspec +1 -1
- metadata +3 -2
data/xlib/debug_mode
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
def debug_mode
|
|
2
|
-
prompt = TTY::Prompt.new
|
|
2
|
+
#prompt = TTY::Prompt.new
|
|
3
3
|
loop do
|
|
4
4
|
if $prompt
|
|
5
5
|
@line = prompt.ask(":")
|
|
@@ -7,23 +7,7 @@ def debug_mode
|
|
|
7
7
|
else
|
|
8
8
|
puts "─" * 30
|
|
9
9
|
@p.prstk
|
|
10
|
-
|
|
11
|
-
@ln = STDIN.getch
|
|
12
|
-
while IO.select([STDIN], [], [], 0) != nil # Flush STDIN (remove control chars)
|
|
13
|
-
STDIN.getch
|
|
14
|
-
end
|
|
15
|
-
if ["+", "-", "*", "/", "%"].include?(@ln)
|
|
16
|
-
print "\e[32m" + @ln + "\e[0m\n"
|
|
17
|
-
@ln = [@ln]
|
|
18
|
-
@line = hp_41(@ln)[0]
|
|
19
|
-
break
|
|
20
|
-
elsif @ln == "\r" # A simple ENTER
|
|
21
|
-
@line = "lift"
|
|
22
|
-
puts "\n"
|
|
23
|
-
break
|
|
24
|
-
end
|
|
25
|
-
print "\e[1G\e[K" # Clears from the beginning of line (removes getch prompt)
|
|
26
|
-
@line = prompt.ask(">", value: @ln)
|
|
10
|
+
@line = @debugprompt.ask(">")
|
|
27
11
|
unless @line == nil or @line.length == 1
|
|
28
12
|
@line = [@line]
|
|
29
13
|
@line = hp_41(@line)[0]
|
data/xlib/read_xcmd
CHANGED
|
@@ -3,15 +3,15 @@ def read_xcmd
|
|
|
3
3
|
if $gem
|
|
4
4
|
Dir[$gem+"/xcmd/*"].each do |file|
|
|
5
5
|
load file
|
|
6
|
-
l =
|
|
7
|
-
c = l
|
|
6
|
+
l = File.read(file)
|
|
7
|
+
c = l[/def .*\n/][4..-2]
|
|
8
8
|
$cmd.push(c)
|
|
9
9
|
end
|
|
10
10
|
end
|
|
11
11
|
Dir[Dir.home+"/.xrpn/xcmd/*"].each do |file|
|
|
12
12
|
load file
|
|
13
|
-
l =
|
|
14
|
-
c = l
|
|
13
|
+
l = File.read(file)
|
|
14
|
+
c = l[/def .*\n/][4..-2]
|
|
15
15
|
$cmd.push(c)
|
|
16
16
|
end
|
|
17
17
|
$cmd.sort!
|
data/xrpn.gemspec
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Gem::Specification.new do |s|
|
|
2
2
|
s.name = 'xrpn'
|
|
3
|
-
s.version = '1.
|
|
3
|
+
s.version = '1.3'
|
|
4
4
|
s.licenses = ['Unlicense']
|
|
5
5
|
s.summary = "XRPN - The eXtended RPN (Reverse Polish Notation) programming language"
|
|
6
6
|
s.description = "A full programming language and environment extending the features of the venerable HP calculator programmable calculators. With XRPN you can accomplish a wide range of modern programming tasks as well as running existing HP-41 FOCAL programs directly. XRPN gives modern life to tens of thousands of old HP calculator programs and opens the possibilities to many, many more."
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: xrpn
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: '1.
|
|
4
|
+
version: '1.3'
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Geir Isene
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2022-12-
|
|
11
|
+
date: 2022-12-19 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: tty-prompt
|
|
@@ -93,6 +93,7 @@ files:
|
|
|
93
93
|
- xcmd/clx
|
|
94
94
|
- xcmd/cmdadd
|
|
95
95
|
- xcmd/cmddel
|
|
96
|
+
- xcmd/cmdhelp
|
|
96
97
|
- xcmd/correct
|
|
97
98
|
- xcmd/cos
|
|
98
99
|
- xcmd/crflas
|