Giter Site home page Giter Site logo

speedcrunch-android's Introduction

SpeedCrunch Android

SpeedCrunch is a high-precision scientific calculator supporting expression editing, history stack, unit conversions, radix systems, complex numbers and user defined variables.

Android port of SpeedCrunch calculator.

User interface is based on the original Sailfish port by @qwazix. Current sailfish version is available in openrepos.net

Features:

  • Calculations with up to 50 digits of precision
  • History stack with value or expression recall
  • Expression editing with system virtual keyboard
  • Fixed decimal, scientific or engineering formats
  • Decimal, binary, octal and hexadecimal bases
  • Built-in functions, constants and units with search
  • User defined variables and functions

Translations in Transifex

Usage

User interface consists three pages. Leftmost page has function list, initial central page is the calculator itself and rightmost page contains some settings. Sideways swiping switches between pages.

In portrait mode sideways swiping within keyboard swithces also between two keyboard panes. Left pane has number keys and common calculation operations. Right pane has some function keys and additional operators.

In Landscape mode there is only one three-row keyboard. Trigonometric and logarithmic functions are not available as keys, but can be found from function list. Cubic root and generic exponent are available as long press secondary options. Bitwise operators are currently not available.

Top right menu has functions for copying latest result or expression to clipboard, pasting clipboard contents to the expression field and clearing the history list. Bottom two menu items open Sailfish Speedcrunch and Desktop Speedcrunch home pages in browser.

Function and settings pages

Leftmost page has function list containing all SpeedCrunch engine functions, units, constants and user defined items. Topmost filter list selection can be used to show only built-in functions, units, constants or user defined variables and functions. Search field below it performs additional filtering by name.

Long press on list item opens context menu with options. First menu item displays list item content. For functions it is usage with parameter names. For constants and variables it is value and for units it is just unit name. Selecting it inserts item to the expression editing field and activates the main calculator page.

Used items are collected to recent item stack and displayed at the top of the list with bold font. Newly created user variables and functions are automatically considered recently used. Other items come after them in alphabetical order. Recent item stack size is not currently limited, but recent menu items has additional context menu item for removing them from the recent stack. Also, user defined functions and variables have context menu item for deleting them.

Rightmost page contains some settings. These are mostly same as desktop version settings and more or less self-explanatory. If the Direct Insert from Lists setting is turned on, pointing item in function or history list inserts it directly to the expression edit field. Note that user defined variables and functions are saved with the history list.

Expression editing and history list

At the top of the main calculator page is history list. All calculated expressions and their results are stored there. Latest result is displayed with bold font.

Long press on list item opens context menu with three options. First item inserts result to the expression editing and second item recalls the whole expression for editing. Third item allows item removing from history list.

Below the history list is expression editing field. It can be edited either by calculator key panes or system virtual keyboard. Enter key on the virtual keyboard just closes it.

Desktop-like popup message above edit field displays current result or error message.

Keyboard and pulley menu

Most keys are familiar to anyone ever used handheld calculator. Key 0x is for entering hexadecimal values (0xFF). Key x is for variable name x and key X= is for user variable or function definition (x=42). Big arrow on the right side of second pane is for unit conversion (1 inch -> foot). Bottom row arrow keys and backspace are for expression field editing.

Some keys have secondary function available with long press:

  • Key 0 produces degree sign °
  • Keys 1-6 produce hexadecimal values A-F
  • Key 9 produces j for complex number imaginary part
  • Key . produces apostrophe ' for minutes
  • Key ; produces colon : for time values
  • Key x² produces generic exponent ^
  • Key √ produces cubic root function
  • Key 0x produces 0b for binary values (0b1010)
  • Key x produces character y for another variable name
  • Key X= produces (x)= for function definition (foo(x)=)
  • Keys ← and → move cursor to start or end of expression

For more information, see desktop SpeedCrunch documentation.

License

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

speedcrunch-android's People

Contributors

mikkosyrja avatar

Stargazers

Henrique Melissopoulos avatar  avatar Stephen Karl Larroque avatar Mhmd Ahmd avatar Jones avatar  avatar  avatar TheDcoder avatar ⊽Ⅰ⊺❍℟ ⊃⋲ Ⅿ∆⊤⦿ § avatar  avatar  avatar  avatar Lee Carré avatar shock avatar lindaiyu avatar David Lavoie-Boutin avatar Paul avatar Bridget McCallum avatar Ulul Azmi avatar fymd avatar  avatar Divy Srivastava avatar daniel zak avatar Max Logaev avatar  avatar  avatar  avatar Muntashir Al-Islam avatar  avatar Austin Henderson avatar  avatar emtee40 avatar  avatar Hugo Locurcio avatar  avatar Taco avatar Fabrizio G. avatar  avatar Nerdy Sam avatar Bart Uliasz avatar Sarat Maharjan avatar

Watchers

 avatar Sarat Maharjan avatar  avatar OpenApk avatar

speedcrunch-android's Issues

Don't forget increasing versionCode ;)

Just a friendly hint not to forget increasing versionCode before making the next release. Currently both, v0.4.1 as well as v0.4.2, have versionCode='4' – so for whoever has installed v0.4.1, v0.4.2 would not show up as update 😉

Changing the color theme

Hi,

First of all, thank you very much for having ported SpeedCrunch for Android. I'm using the latest release and I have to say that everything works great.

Can you please tell me if there's a way to customize the colors? Or, better, to use color themes like in the desktop app?

Thanks.

Add ans Button

For faster input it would be nice to have a "ans" button, preferably on the first page of the keyboard

History file location

I'm very happy to discover that SpeedCrunch has been ported to Android.

I do have one request though. I would like to import my history.json file with all my functions defined on SpeedCrunch Windows.
Where should I copy my history.json file to my Android device?

My ultimate idea would be to synchronize this file on my devices.
Thank you in advance

publish speedcrunch on fdroid

hi

I am opening a request for packaging (rfp) for getting this app included in the FOSS app store: f-droid

  • If you oppose the inclusion, please comment here regarding that
  • If you are neutral for the inclusion (i.e. dont oppose, but dont want to help with any process either), then no action is required. Though, mentioning that too will help clear the waters.
  • if you actively support inclusion, then please participate here and at : https://gitlab.com/fdroid/rfp/-/issues/2130

thanks

Build instructions

I know speedcrunch on Windows and I am interested in using it on Android, too.
Do you have a guide that covers the building process for an Android-APK-file and share it?

Swapping the position of equal and backspace

Hi,

I suggest that an option be added to swap the position of equal and backspace.

For me, equal should be lower right as on most calculators while backspace should be at the top like on most keyboards.

Thanks for considering.

Ans as default number for next operation

Speedcrunch on PC offers the Ans of the previous calculation by default.
Eg:
Calculation no.1: 5 + 2 = 7
Calculation no.2: -3 = 4 ( because it automatically uses "ans" when no number is given as input. So, it becomes ans-4=4, i.e., 7-3=4)
Please allow this convenient behaviour in the Android version too.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.